- 注释
注释用于提高代码的可读性,在代码中添加说明文字,使代码更容易理解。
- 单行注释 :使用
#
符号开头,注释内容在符号之后的行内。 - 多行注释 :使用三引号(
'''
或"""
)包裹注释内容,可跨多行。
这是一个单行注释
"""
这是一个多行注释
可以跨越多行
"""
2. 变量
变量是存储数据的容器,可以通过赋值操作将数据存储在变量中。
- 命名规则 :
- 变量名由字母、数字和下划线组成,不能以数字开头。
- 变量名对大小写敏感。
- 使用有意义的变量名有助于代码的可读性。
age = 25
name = "Alice"
3. 输出
输出是将数据展示给用户或其他程序的过程,Python使用 print()
函数来输出内容。
print("Hello, World!")
print("Age:", age)
4. 输入
输入是从用户或其他程序获取数据的过程,Python使用 input()
函数来获取用户输入的数据。
name = input("Enter your name: ")
print("Hello, " + name)
5. 转换数据类型
Python支持多种数据类型,可以通过类型转换函数将一种数据类型转换为另一种。
- 常见的类型转换函数:
int()
:将数据转换为整数类型float()
:将数据转换为浮点数类型str()
:将数据转换为字符串类型
age = int(input("Enter your age: "))
height = float(input("Enter your height: "))
6. 运算符
运算符用于对变量或值执行操作。
- 算术运算符 :
+
,-
,*
,/
,//
,%
,**
- 比较运算符 :
==
,!=
,>
,<
,>=
,<=
- 逻辑运算符 :
and
,or
,not
- 赋值运算符 :
=
,+=
,-=
,*=
,/=
,%=
- 位运算符 :
&
,|
,^
,~
,<<
,>>
result = 3 + 5
is_equal = (3 == 5)
7. 条件语句
条件语句根据条件是否为真来决定执行的代码块,使用 if
、elif
和 else
关键字。
age = 18
if age >= 18:
print("You are an adult.")
else:
print("You are a minor.")
8. 循环
循环用于重复执行一段代码。
for
循环:用于遍历序列(如列表、字符串)中的每个元素。while
循环:在条件为真时重复执行代码块。
for循环
for i in range(5):
print(i)
while循环
count = 0
while count < 5:
print(count)
count += 1
9. 字符串
字符串是字符的序列,使用单引号或双引号定义。
- 常用操作:
- 连接字符串:
+
- 重复字符串:
*
- 访问字符:
[]
- 切片:
[:]
- 连接字符串:
greeting = "Hello"
name = "Alice"
full_greeting = greeting + " " + name
print(full_greeting)
10. 列表
列表是一个有序的可变集合,使用方括号定义,可以包含不同类型的元素。
- 常用操作:
- 添加元素:
append()
- 删除元素:
remove()
,pop()
- 访问元素:
[]
- 切片:
[:]
- 添加元素:
fruits = ["apple", "banana", "cherry"]
fruits.append("orange")
print(fruits[1]) # 输出: banana
11. 元组
元组是一个有序的不可变集合,使用圆括号定义。
- 常用操作:
- 访问元素:
[]
- 解包:将元组中的元素赋值给变量
- 访问元素:
point = (10, 20)
x, y = point
print(x, y) # 输出: 10 20
12. 字典
字典是一个无序的键值对集合,使用大括号定义,键和值通过冒号 :
分隔。
- 常用操作:
- 添加或更新键值对:
dict[key] = value
- 删除键值对:
del dict[key]
- 访问值:
dict[key]
- 添加或更新键值对:
person = {"name": "Alice", "age": 25}
person["age"] = 26
print(person["name"]) # 输出: Alice
13. 集合
集合是一个无序的不重复元素集合,使用大括号定义。
- 常用操作:
- 添加元素:
add()
- 删除元素:
remove()
,discard()
- 集合运算:交集、并集、差集
- 添加元素:
fruits = {"apple", "banana", "cherry"}
fruits.add("orange")
print(fruits)
14. 公共操作
公共操作包括序列和集合类型的常见操作。
- 长度 :
len()
返回序列或集合的元素个数。 - 最大值/最小值 :
max()
和min()
返回序列中的最大和最小值。 - 排序 :
sorted()
返回排序后的序列。 - 枚举 :
enumerate()
返回枚举对象,通常在for
循环中使用。
numbers = [3, 1, 4, 1, 5]
print(len(numbers)) # 输出: 5
print(max(numbers)) # 输出: 5
print(sorted(numbers)) # 输出: [1, 1, 3, 4, 5]
15. 推导式
推导式是一种简洁的创建序列或集合的方式。
- 列表推导式:用于创建列表。
- 字典推导式:用于创建字典。
- 集合推导式:用于创建集合。
# 列表推导式
squares = [x**2 for x in range(5)]
print(squares) # 输出: [0, 1, 4, 9, 16]
16. 函数一
函数是执行特定任务的代码块,使用 def
关键字定义。
- 定义函数 :通过
def
关键字定义函数。 - 参数和返回值:函数可以接收参数并返回值。
def greet(name):
return "Hello, " + name
print(greet("Alice"))
17. 函数二
函数的高级特性包括默认参数、关键字参数和可变长度参数。
- 默认参数:为参数提供默认值。
- 关键字参数:通过参数名传递参数。
- 可变长度参数 :使用
*args
和**kwargs
接受任意数量的位置参数和关键字参数。
def greet(name, greeting="Hello"):
return greeting + ", " + name
print(greet("Alice"))
print(greet("Alice", "Hi"))
18. 函数三
函数的进阶特性包括匿名函数和闭包。
- 匿名函数 :使用
lambda
关键字定义匿名函数。 - 闭包:内部函数可以访问外部函数的变量。
# 匿名函数
square = lambda x: x**2
print(square(4)) # 输出: 16
# 闭包
def outer_func(msg):
def inner_func():
print(msg)
return inner_func
hello_func = outer_func("Hello")
hello_func() # 输出: Hello
19. 文件操作
Python提供了多种方式来处理文件操作,如读取和写入文件。
- 打开文件 :
open()
函数用于打开文件。 - 读取文件 :
read()
读取整个文件,readline()
读取一行,readlines()
读取所有行。 - 写入文件 :
write()
将数据写入文件。 - 关闭文件 :
close()
关闭文件。
with open("example.txt", "w") as file:
file.write("Hello, World!")
with open("example.txt", "r") as file:
content = file.read()
print(content)
20. 面向对象基础
面向对象编程(OOP)是将数据和操作封装在对象中的编程方式。
- 类和对象 :类是对象的蓝图,使用
class
关键字定义,实例化类创建对象。 - 属性和方法:类的属性和方法定义了对象的状态和行为。
__init__
方法:构造方法,用于初始化对象。
class Dog:
def __init__(self, name, age):
self.name = name
self.age = age
def bark(self):
print("Woof!")
dog = Dog("Rex", 5)
dog.bark() # 输出: Woof!
21. 面向对象-继承
继承是通过现有类创建新类的机制,新类可以继承父类的属性和方法。
- 子类:继承自父类,可以重写父类的方法或添加新方法。
- 多继承:一个类可以继承多个父类。
class Animal:
def eat(self):
print("Eating...")
class Dog(Animal):
def bark(self):
print("Woof!")
dog = Dog()
dog.eat() # 输出: Eating...
dog.bark() # 输出: Woof!
22. 面向对象-其他
面向对象编程中还包括封装、抽象和多态性等概念。
- 封装:将数据和方法封装在类中,控制对内部细节的访问。
- 抽象:通过接口和抽象类来定义行为,而不实现具体功能。
- 多态性:不同类的对象可以通过相同的接口调用不同的实现。
class Shape:
def draw(self):
raise NotImplementedError("Subclass must implement abstract method")
class Circle(Shape):
def draw(self):
print("Drawing a circle")
shape = Circle()
shape.draw() # 输出: Drawing a circle
23. 异常
异常处理用于捕获和处理运行时错误,以防止程序崩溃。
- 捕获异常 :使用
try
和except
块捕获异常。 finally
块 :无论是否发生异常,finally
块的代码总是会执行。- 自定义异常 :可以创建自定义异常类,继承自
Exception
。
try:
result = 10 / 0
except ZeroDivisionError:
print("Cannot divide by zero")
finally:
print("Execution complete")
24. 模块和包
模块和包用于组织和管理代码,模块是一个Python文件,包是包含模块的目录。
- 导入模块 :使用
import
导入模块。 - 自定义模块 :将Python代码保存在
.py
文件中,可以作为模块导入。 - 标准库:Python提供了丰富的标准库,可以直接导入使用。
import math
print(math.sqrt(16)) # 输出: 4.0
25. 包
包是包含多个模块的目录,通过层次化组织代码,包中必须包含 __init__.py
文件。
- 创建包 :将模块放入目录中,并添加
__init__.py
文件。 - 导入包 :使用
import
导入包中的模块或子包。
# 目录结构
# mypackage/
# ├── __init__.py
# ├── module1.py
# └── module2.py
from mypackage import module1
这些知识点构成了Python编程的基础,掌握这些内容将为更高级的编程打下坚实的基础。