本文提供了Python编程语言的基础知识点概览,覆盖了从基础的变量赋值、数据类型、注释,到更高级的概念如类定义、继承、异常处理等。以下是文章的摘要:
- 基础语法:介绍了变量赋值、数据类型(整数、浮点数、字符串、布尔值)、注释方法。
- 运算符:包括算术运算符、比较运算符、逻辑运算符的使用。
- 控制流:涉及条件语句(if-elif-else)和循环(for、while)。
- 数据结构:包括列表、元组、字典、集合的使用及其操作方法。
- 字符串操作:包括字符串格式化、大小写转换、分割、替换等。
- 函数:包括函数定义、默认参数、关键字参数、可变参数、lambda表达式。
- 迭代与生成器:介绍了列表解析、生成器表达式、迭代器协议。
- 面向对象编程:涉及类的定义、继承、魔法方法、属性装饰器。
- 高级特性:包括装饰器、上下文管理器、类型注解、枚举类型。
- 文件操作:文件的读取与写入。
- 异常处理:try-except-finally的使用。
- 模块与包:模块的导入和使用,包的概念。
- 系统交互:使用os和sys模块与操作系统交互。
- 正则表达式:使用re模块处理文本匹配。
- 数据处理:JSON解析、日期时间处理、随机数生成、数学运算。
-
变量和赋值:
x = 5 name = "John"
-
数据类型:
- 整数(int)
- 浮点数(float)
- 字符串(str)
- 布尔值(bool)
-
注释:
# 这是单行注释 """ 这是 多行注释 """
-
算术运算:
a + b # 加法 a - b # 减法 a * b # 乘法 a / b # 除法 a % b # 取余 a ** b # 幂运算
-
比较运算:
a == b # 等于 a != b # 不等于 a > b # 大于 a < b # 小于 a >= b # 大于等于 a <= b # 小于等于
-
逻辑运算:
a and b a or b not a
-
条件语句:
if condition:# do something elif another_condition:# do something else else:# do something different
-
循环:
for i in range(5):print(i)while condition:# do something
-
列表:
my_list = [1, 2, 3] my_list.append(4) my_list[0] # 访问元素
-
元组:
my_tuple = (1, 2, 3)
-
字典:
my_dict = {"name": "John", "age": 30} my_dict["name"] # 访问键值
-
集合:
my_set = {1, 2, 3} my_set.add(4)
-
字符串操作:
s = "hello" s.upper() s.lower() s.split(" ") s.replace("h", "j")
-
字符串格式化:
name = "John" age = 30 f"Hello, {name}. You are {age}."
-
列表解析:
squares = [x**2 for x in range(10)]
-
函数定义:
def my_function(param1, param2):return param1 + param2
-
默认参数:
def my_function(param1, param2=5):return param1 + param2
-
关键字参数:
def my_function(param1, param2):return param1 + param2 my_function(param2=10, param1=5)
-
可变参数:
def my_function(*args):for arg in args:print(arg)my_function(1, 2, 3)
-
关键字可变参数:
def my_function(**kwargs):for key, value in kwargs.items():print(f"{key}: {value}")my_function(name="John", age=30)
-
lambda表达式:
f = lambda x: x**2 f(5)
-
map函数:
list(map(lambda x: x**2, range(10)))
-
filter函数:
list(filter(lambda x: x % 2 == 0, range(10)))
-
reduce函数:
from functools import reduce reduce(lambda x, y: x + y, range(10))
-
异常处理:
try:# do something except Exception as e:print(e) finally:# cleanup
-
文件读取:
with open("file.txt", "r") as file:content = file.read()
-
文件写入:
with open("file.txt", "w") as file:file.write("Hello, World!")
-
类定义:
class MyClass:def __init__(self, param1):self.param1 = param1def my_method(self):return self.param1
-
类继承:
class MyBaseClass:def __init__(self, param1):self.param1 = param1class MyDerivedClass(MyBaseClass):def __init__(self, param1, param2):super().__init__(param1)self.param2 = param2
-
魔法方法:
class MyClass:def __init__(self, param1):self.param1 = param1def __str__(self):return f"MyClass with param1={self.param1}"
-
属性和装饰器:
class MyClass:def __init__(self, value):self._value = value@propertydef value(self):return self._value@value.setterdef value(self, new_value):self._value = new_value
-
生成器:
def my_generator():yield 1yield 2yield 3for value in my_generator():print(value)
-
列表解析和生成器表达式:
[x**2 for x in range(10)] (x**2 for x in range(10))
-
集合解析:
{x**2 for x in range(10)}
-
字典解析:
{x: x**2 for x in range(10)}
-
上下文管理器:
with open("file.txt", "r") as file:content = file.read()
-
装饰器:
def my_decorator(func):def wrapper(*args, **kwargs):print("Before function call")result = func(*args, **kwargs)print("After function call")return resultreturn wrapper@my_decorator def my_function():print("Function call")my_function()
-
类型注解:
def my_function(param1: int, param2: str) -> str:return param2 * param1
-
枚举:
from enum import Enumclass Color(Enum):RED = 1GREEN = 2BLUE = 3
-
迭代器:
class MyIterator:def __init__(self, start, end):self.current = startself.end = enddef __iter__(self):return selfdef __next__(self):if self.current >= self.end:raise StopIterationelse:self.current += 1return self.current - 1
-
JSON解析:
import jsonjson_str = '{"name": "John", "age": 30}' data = json.loads(json_str)
-
日期和时间:
from datetime import datetime now = datetime.now()
-
随机数生成:
import randomrandom_number = random.randint(1, 10)
-
数学运算:
import mathmath.sqrt(16)
-
模块和包:
# my_module.py def my_function():return "Hello"# main.py import my_module my_module.my_function()
-
命名空间:
global_var = 5def my_function():local_var = 10global global_varglobal