目录
1. python 基础知识点归纳总结
Py 语法是一种高级编程语言, 由于其简单易学、功能强大的特性, 已经成为了当前最流行的编程语言之一。
1.1. 变量
变量是存储数据的容器。在 Py 中, 你可以用任何名称来定义一个变量, 但是要遵守以下几个规则:
- 变量名只能由字母、数字和下划线组成。
- 变量名的第一个字符必须是字母或下划线。
- 变量名是区分大小写的。
例如, 以下代码演示了如何定义和使用变量:
# 定义变量 x 并赋值为 10x = 10# 打印变量 x 的值print(x)# 定义变量 message 并赋值为"Hello, World!"message = "Hello, World!"# 打印变量 message 的值print(message)
输出结果:
10Hello, World!
1.2. 数据类型
在 Py 中, 常见的数据类型有整数 (int)、浮点数 (float)、布尔值 (bool)、字符串 (str)、列表 (list)、元组 (tuple)、字典 (dict) 等。以下是这些数据类型的示例:
# 整数x = 10print(type(x)) # # 浮点数y = 3.14print(type(y)) # # 布尔值a = Trueb = Falseprint(type(a)) # print(type(b)) # # 字符串message = "Hello, World!"print(type(message)) # # 列表my_list = [1, 2, 3, 4, 5]print(type(my_list)) # # 元组my_tuple = (1, 2, 3, 4, 5)print(type(my_tuple)) # # 字典my_dict = {'name': 'Jack', 'age': 25}print(type(my_dict)) #
输出结果:
<class 'int'><class 'float'><class 'bool'><class 'str'><class 'list'><class 'tuple'><class 'dict'>
1.3. 控制流语句
控制流语句用于控制代码的执行流程。在 Py 中, 常见的控制流语句有 if 语句、for 循环和 while 循环。
1.3.1. if 语句
if 语句用于根据条件判断执行哪些代码块。以下是一个示例:
x = 10if x > 5: print("x is greater than 5")else: print("x is not greater than 5")
输出结果:
x is greater than 5
1.3.2. for 循环
for 循环用于迭代一个序列(如列表或元组)中的元素。以下是一个示例:
fruits = ["apple", "banana", "cherry"]for fruit in fruits: print(fruit)
输出结果:
applebananacherry
1.3.3. while 循环
while 循环用于在条件满足的情况下重复执行代码块。以下是一个示例:
i = 1while i < 6: print(i) i += 1
输出结果:
12345
1.4. 函数
函数用于封装一些可以被重复使用的代码块。在 Py 中, 你可以使用 def 关键字来定义函数。以下是一个示例:
def square(x): return x ** 2print(square(5))
输出结果:
25
1.5. 类和对象
Py 是一种面向对象的编程语言, 因此它支持类和对象的概念。在 Py 中, 你可以使用 class 关键字来定义一个类, 使用对象来访问这个类的属性和方法。以下是一个示例:
class Car: def __init__(self, make, model, year): self.make = make self.model = model self.year = year def start(self): print("Starting the car.")my_car = Car("Toyota", "Camry", 2021)print(my_car.make) # Toyotaprint(my_car.model) # Camryprint(my_car.year) # 2021my_car.start() # Starting the car.
输出结果:
ToyotaCamry2021Starting the car.
1.6. 异常处理
异常处理用于处理代码运行时可能出现的错误。在 Py 中, 你可以使用 try/except 语句来捕获并处理异常。以下是一个示例:
try: x = int(input("Please enter a number: ")) print(x)except ValueError: print("That was not a valid number.")
在这个示例中, 如果用户输入的不是一个数字, 则会抛出 ValueError 异常, 程序将会执行 except 块中的代码。
1.7. 模块和包
Py 中的模块和包用于组织和管理代码。模块就是一个包含函数、类等定义的文件, 你可以使用 import 关键字来引入其他模块中的定义。而包是多个模块的集合, 它们通常分别存放在不同的文件夹中。以下是一个示例:
# 在 my_module.py 文件中定义了一个 add 函数def add(x, y): return x + y# 在 main.py 文件中引入 my_module.py 文件import my_moduleprint(my_module.add(5, 10)) # 15
在这个示例中, 我们在 my_module.py 文件中定义了一个 add 函数, 然后在 main.py 文件中使用 import 关键字将 my_module.py 文件引入进来, 并调用了其中的 add 函数。
1.8. 文件操作
Py 中的文件操作用于读取和写入文件。你可以使用 open 函数来打开一个文件, 并使用 read 和 write 等方法来进行读写操作。以下是一个示例:
# 打开 test.txt 文件file = open("test.txt", "w")# 向文件中写入一行文本file.write("Hello, World!")# 关闭文件file.close()# 再次打开 test.txt 文件file = open("test.txt", "r")# 读取文件中的内容并打印到屏幕上print(file.read())# 关闭文件file.close()
在这个示例中, 我们首先使用 open 函数打开了一个名为 test.txt 的文件, 并使用写模式(“w”)向其中写入了一行文本。然后关闭文件并再次打开它, 使用读模式(“r”)从文件中读取这行文本并将其打印到屏幕上。
1.9. 正则表达式
正则表达式用于匹配字符串中的模式。在 Py 中, 你可以使用 re 模块来进行正则表达式的操作。以下是一个示例:
import re# 在字符串中查找数字text = "Hello 123 World"result = re.search(r'\d+', text)print(result.group(0)) # 123
在这个示例中, 我们通过 re.search 函数使用正则表达式查找了字符串 text 中的第一个数字, 并将其打印到屏幕上。
1.10. 内置函数
Py 中内置了许多常用的函数, 如 print、len、range 等。以下是这些内置函数的示例:
# print 函数用于输出文本到屏幕上print("Hello, World!")# len 函数用于获取字符串、列表等对象的长度my_string = "Hello, World!"print(len(my_string)) # 13my_list = [1, 2, 3, 4, 5]print(len(my_list)) # 5# range 函数用于生成一个范围内的整数序列for i in range(1, 6): print(i)# 输出结果: # 1# 2# 3# 4# 5
1.11. Lambda 函数
Lambda 函数是一种匿名函数, 它可以在需要时动态地创建和使用, 通常用于函数式编程中。它的基本语法为: lambda arguments: expression, 其中 arguments 为参数列表, expression 为函数表达式。以下是一个示例:
# 定义一个将两个数相加的 lambda 函数add = lambda x, y: x + y# 调用这个 lambda 函数result = add(5, 10)print(result) # 15
在这个示例中, 我们定义了一个将两个数相加的 lambda 函数, 并使用了它来计算 5 和 10 的和。
1.12. Map 函数
Map 函数用于对可迭代对象中的每个元素应用某个函数, 并返回一个新的可迭代对象。以下是一个示例:
# 将列表中的每个元素都平方, 并返回一个新的列表my_list = [1, 2, 3, 4, 5]squared_list = list(map(lambda x: x**2, my_list))print(squared_list) # [1, 4, 9, 16, 25]
在这个示例中, 我们使用 map 函数对 my_list 中的每个元素应用了 lambda 函数, 将其平方, 并返回了一个新的列表。
1.13. Filter 函数
Filter 函数用于对可迭代对象中的每个元素进行过滤, 并返回一个符合条件的元素的新的可迭代对象。以下是一个示例:
# 从列表中过滤出所有的偶数, 并返回一个新的列表my_list = [1, 2, 3, 4, 5]filtered_list = list(filter(lambda x: x % 2 == 0, my_list))print(filtered_list) # [2, 4]
在这个示例中, 我们使用 filter 函数对 my_list 中的每个元素进行了过滤, 只留下了其中的偶数, 并返回了一个新的列表。
1.14. Decorator 装饰器
Decorator 装饰器用于在不修改已有函数代码的情况下增强其功能。它的基本语法为: @decorator, 紧跟着要定义的函数, 其中 decorator 是一个装饰器函数。以下是一个示例:
# 定义一个装饰器函数, 用于计算函数执行时间import timedef timer(func): def wrapper(*args, **kwargs): start_time = time.time() result = func(*args, **kwargs) end_time = time.time() print("Time taken: ", end_time - start_time) return result return wrapper# 使用这个装饰器装饰一个函数@timerdef my_function(): time.sleep(2) print("Function executed.")# 调用被装饰的函数my_function()
在这个示例中, 我们定义了一个装饰器函数 timer, 它可以计算被装饰的函数的执行时间。然后我们用 @timer 语法将 my_function 函数装饰起来, 使它支持计算执行时间的功能。最后我们调用了被装饰的 my_function 函数并观察结果。
1.15. 迭代器和生成器
Py 中的迭代器和生成器用于处理大数据集合或无限序列等情况。迭代器是一种对象, 它支持在遍历时逐个返回元素。而生成器是一种特殊的迭代器, 它可以在需要时动态地生成元素。以下是一个示例:
# 定义一个简单的迭代器类, 用于遍历一个列表class MyIterator: def __init__(self, my_list): self.index = 0 self.my_list = my_list def __iter__(self): return self def __next__(self): if self.index < len(self.my_list): result = self.my_list[self.index] self.index += 1 return result else: raise StopIteration# 使用这个迭代器来遍历一个列表my_list = [1, 2, 3, 4, 5]my_iterator = MyIterator(my_list)for item in my_iterator: print(item)# 定义一个简单的生成器函数, 用于生成一个斐波那契数列def fibonacci(): a, b = 0, 1 while True: yield a a, b = b, a + b# 使用这个生成器来生成一个斐波那契数列fib = fibonacci()for i in range(10): print(next(fib))
在这个示例中, 我们定义了一个简单的迭代器类 MyIterator, 它可以遍历一个列表。然后我们使用这个迭代器来遍历 my_list 列表, 并打印其中的元素。
另外, 我们还定义了一个简单的生成器函数 fibonacci, 它可以生成一个无限序列的斐波那契数列。然后我们使用这个生成器来生成一个长度为 10 的斐波那契数列。
1.16. 多线程和多进程
Py 中的多线程和多进程用于在同一时间内运行多个任务, 以提高程序的性能。多线程是在同一进程内同时运行多个线程, 而多进程则是启动多个进程并在它们之间分配任务。以下是一个示例:
# 使用多线程处理一些任务import threadingdef task1(): print("Task 1 executed.")def task2(): print("Task 2 executed.")# 同时运行两个线程thread1 = threading.Thread(target=task1)thread2 = threading.Thread(target=task2)thread1.start()thread2.start()# 使用多进程处理一些任务import multiprocessingdef task3(): print("Task 3 executed.")def task4(): print("Task 4 executed.")# 同时启动两个进程process1 = multiprocessing.Process(target=task3)process2 = multiprocessing.Process(target=task4)process1.start()process2.start()
在这个示例中, 我们使用多线程和多进程来同时处理一些任务。对于多线程, 我们使用 threading 模块创建了两个线程, 并在它们之间分配了任务。而对于多进程, 我们使用 multiprocessing 模块启动了两个进程, 并在它们之间分配了任务。
注意, 在 Py 中使用多线程和多进程时需要注意线程安全和进程间通信等问题, 避免产生死锁、竞态条件等问题。
1.17. 异常处理
Py 中的异常处理机制用于处理程序在运行时出现的错误或异常情况, 以避免程序崩溃或产生不可预料的结果。异常处理使用 try-except 结构来捕获异常并执行相关的处理逻辑。以下是一个示例:
# 使用异常处理机制处理程序中的错误try: x = 1 / 0except ZeroDivisionError: print("Cannot divide by zero.")# 使用多个 except 块来处理不同类型的异常try: my_list = [1, 2, 3] print(my_list[3])except IndexError: print("Index out of range.")except ValueError: print("Invalid value.")except: print("Some other error occurred.")
在这个示例中, 我们使用 try-except 结构来捕获程序中的错误。第一个 try 语句中我们尝试除以 0, 这会引发一个 ZeroDivisionError 异常, 于是我们用 except 语句捕获这个异常, 并打印一条错误消息。
而第二个 try 语句中我们尝试访问列表 my_list 中的第 4 个元素, 这会引发一个 IndexError 异常, 于是我们用一个 except 块来捕获这个异常并打印一条错误消息。另外, 我们还添加了一个 ValueError 和一个通用的 except 块, 分别用于处理其它类型的异常。
1.18. with 语句
Py 中的 with 语句用于管理一些资源(例如文件)的打开与关闭, 以避免因忘记关闭资源而造成的泄漏或错误。with 语句中使用的对象必须具有__enter__() 和__exit__() 方法。以下是一个示例:
# 使用 with 语句自动管理文件资源with open("example.txt", "r") as file: content = file.read() print(content)
在这个示例中, 我们使用 with 语句来自动管理文件资源。当程序离开 with 代码块时, 文件会自动关闭, 无需手动调用 close() 方法。
1.19. Python 标准库和第三方库
Py 中包含了大量的标准库, 这些库提供了丰富的功能和工具, 可以帮助我们更轻松地编写代码。另外, 还有许多第三方库可以扩展 Py 的功能, 例如 NumPy、Pandas 和 Django 等。以下是一个示例:
# 使用标准库中的 random 模块和 datetime 模块import randomimport datetime# 生成一个长度为 10 的随机数列表my_list = [random.randint(1, 100) for _ in range(10)]print(my_list)# 获取当前时间并格式化输出now = datetime.datetime.now()print(now.strftime("%Y-%m-%d %H:%M:%S"))
在这个示例中, 我们使用了标准库中的 random 模块和 datetime 模块。其中, random 模块用于生成随机数, 而 datetime 模块用于获取当前时间并进行格式化输出。
1.20. Py 的应用领域
Py 可以应用于多种领域, 例如 Web 开发、数据科学、人工智能、自然语言处理、游戏开发等。以下是一些示例:
- Web 开发: 使用 Django 或 Flask 等框架进行 Web 应用程序的开发。
- 数据科学: 使用 NumPy、Pandas 和 Matplotlib 等库进行数据分析和可视化。
- 人工智能: 使用 TensorFlow 和 PyTorch 等库进行机器学习和深度学习等任务。
- 自然语言处理: 使用 NLTK 和 SpaCy 等库进行文本分析和处理。
- 游戏开发: 使用 Pygame 等工具进行 2D 游戏的开发。
总之, Py 是一种功能强大、易于学习和使用的编程语言, 可以用于多种领域的应用开发。
来源地址:https://blog.csdn.net/wan212000/article/details/131669252