Python 学习总结:运算符、数字、字符串、列表、元组、字典、集合、条件控制、循环语句
1. 运算符
Python 提供了多种运算符,包括算术运算符、比较运算符、逻辑运算符、赋值运算符等。
- 算术运算符 :
+
,-
,*
,/
,//
(整除),%
(取余),**
(幂运算) - 比较运算符 :
==
,!=
,>
,<
,>=
,<=
- 逻辑运算符 :
and
,or
,not
- 赋值运算符 :
=
,+=
,-=
,*=
,/=
,//=
,%=
,**=
python
a = 10
b = 3
print(a + b) # 13
print(a > b) # True
print(a == b and a > b) # False
2. 数字
Python 支持整数(int
)、浮点数(float
)、复数(complex
)等数字类型。
python
x = 10 # 整数
y = 3.14 # 浮点数
z = 2 + 3j # 复数
3. 字符串
字符串是不可变的序列,支持索引、切片、拼接等操作。
python
s = "Hello, Python!"
print(s[0]) # H
print(s[7:13]) # Python
print(s + " 2023") # Hello, Python! 2023
4. 列表
列表是可变的序列,可以存储不同类型的元素。
python
lst = [1, 2, 3, 'a', 'b', 'c']
lst.append(4) # 添加元素
lst[0] = 10 # 修改元素
print(lst) # [10, 2, 3, 'a', 'b', 'c', 4]
Python 中的列表(list
)是一种非常灵活且常用的数据结构,提供了许多内置方法来操作列表。以下是列表的常用方法及其功能:
4.1 添加元素
-
append(x)
在列表末尾添加元素
x
。pythonlst = [1, 2, 3] lst.append(4) # [1, 2, 3, 4]
-
extend(iterable)
将可迭代对象(如列表、元组、字符串等)中的元素逐个添加到列表末尾。
pythonlst = [1, 2, 3] lst.extend([4, 5]) # [1, 2, 3, 4, 5]
-
insert(i, x)
在索引
i
处插入元素x
,原位置及后面的元素向后移动。pythonlst = [1, 2, 3] lst.insert(1, 10) # [1, 10, 2, 3]
4.2 删除元素
-
remove(x)
删除列表中第一个值为
x
的元素。如果元素不存在,会抛出ValueError
。pythonlst = [1, 2, 3, 2] lst.remove(2) # [1, 3, 2]
-
pop([i])
删除并返回索引
i
处的元素。如果不指定索引,默认删除并返回最后一个元素。pythonlst = [1, 2, 3] lst.pop() # 返回 3,列表变为 [1, 2] lst.pop(0) # 返回 1,列表变为 [2]
-
clear()
清空列表中的所有元素。
pythonlst = [1, 2, 3] lst.clear() # []
4.3 查找和统计
-
index(x[, start[, end]])
返回第一个值为
x
的元素的索引。可以指定搜索范围[start, end)
。如果元素不存在,会抛出ValueError
。pythonlst = [1, 2, 3, 2] print(lst.index(2)) # 1 print(lst.index(2, 2)) # 3
-
count(x)
返回值为
x
的元素在列表中出现的次数。pythonlst = [1, 2, 3, 2] print(lst.count(2)) # 2
4.4 排序和反转
-
sort(key=None, reverse=False)
对列表进行原地排序。
key
是排序依据的函数,reverse
决定是否降序。pythonlst = [3, 1, 4, 2] lst.sort() # [1, 2, 3, 4] lst.sort(reverse=True) # [4, 3, 2, 1]
-
reverse()
反转列表中的元素顺序。
pythonlst = [1, 2, 3] lst.reverse() # [3, 2, 1]
4.5 复制列表
-
copy()
返回列表的浅拷贝。pythonlst = [1, 2, 3] lst_copy = lst.copy() # [1, 2, 3]
4.6 其他操作
-
len(lst)
返回列表的长度(元素个数)。
pythonlst = [1, 2, 3] print(len(lst)) # 3
-
max(lst)
和min(lst)
返回列表中的最大值和最小值。
pythonlst = [1, 2, 3] print(max(lst)) # 3 print(min(lst)) # 1
-
sum(lst)
返回列表中所有元素的和(仅适用于数值类型)。
pythonlst = [1, 2, 3] print(sum(lst)) # 6
4.7 列表推导式
虽然不是方法,但列表推导式是一种非常强大的创建列表的方式。
python
squares = [x**2 for x in range(5)] # [0, 1, 4, 9, 16]
总结
列表是 Python 中最常用的数据结构之一,掌握其方法对于编写高效代码非常重要。以下是常用方法的快速回顾:
方法 | 功能描述 |
---|---|
append(x) |
在末尾添加元素 |
extend(iter) |
扩展列表 |
insert(i, x) |
在指定位置插入元素 |
remove(x) |
删除第一个匹配的元素 |
pop([i]) |
删除并返回指定位置的元素 |
clear() |
清空列表 |
index(x) |
返回元素的索引 |
count(x) |
统计元素出现的次数 |
sort() |
排序列表 |
reverse() |
反转列表 |
copy() |
返回列表的浅拷贝 |
通过灵活运用这些方法,可以高效地操作列表数据。
5. 元组
元组是不可变的序列,通常用于存储不可修改的数据。
python
tup = (1, 2, 3, 'a', 'b', 'c')
print(tup[2]) # 3
6. 字典
字典是键值对的集合,键必须是不可变类型。
python
dic = {'name': 'Alice', 'age': 25}
dic['age'] = 26 # 修改值
dic['city'] = 'Beijing' # 添加新键值对
print(dic) # {'name': 'Alice', 'age': 26, 'city': 'Beijing'}
Python 中的字典(dict
)是一种键值对(key-value)结构的数据类型,提供了许多内置方法来操作字典。以下是字典的常用方法及其功能:
6.1 访问元素
-
get(key[, default])
返回键
key
对应的值。如果键不存在,返回default
(默认为None
)。pythondic = {'name': 'Alice', 'age': 25} print(dic.get('name')) # Alice print(dic.get('city', 'Unknown')) # Unknown
-
keys()
返回字典中所有键的视图(
dict_keys
对象)。pythondic = {'name': 'Alice', 'age': 25} print(dic.keys()) # dict_keys(['name', 'age'])
-
values()
返回字典中所有值的视图(
dict_values
对象)。pythondic = {'name': 'Alice', 'age': 25} print(dic.values()) # dict_values(['Alice', 25])
-
items()
返回字典中所有键值对的视图(
dict_items
对象)。pythondic = {'name': 'Alice', 'age': 25} print(dic.items()) # dict_items([('name', 'Alice'), ('age', 25)])
6.2 添加或修改元素
-
dict[key] = value
直接通过键赋值的方式添加或修改元素。
pythondic = {'name': 'Alice'} dic['age'] = 25 # 添加新键值对 dic['name'] = 'Bob' # 修改键对应的值 print(dic) # {'name': 'Bob', 'age': 25}
-
update([other])
用另一个字典或键值对更新当前字典。如果键已存在,则覆盖其值。
pythondic = {'name': 'Alice'} dic.update({'age': 25, 'city': 'Beijing'}) print(dic) # {'name': 'Alice', 'age': 25, 'city': 'Beijing'}
-
setdefault(key[, default])
如果键
key
存在,返回其值;如果不存在,则插入key
并设置值为default
(默认为None
)。pythondic = {'name': 'Alice'} print(dic.setdefault('age', 25)) # 25 print(dic) # {'name': 'Alice', 'age': 25}
6.3 删除元素
-
pop(key[, default])
删除并返回键
key
对应的值。如果键不存在,返回default
(未提供default
时会抛出KeyError
)。pythondic = {'name': 'Alice', 'age': 25} print(dic.pop('age')) # 25 print(dic) # {'name': 'Alice'}
-
popitem()
删除并返回字典中的最后一个键值对(Python 3.7+ 中字典是有序的)。如果字典为空,抛出
KeyError
。pythondic = {'name': 'Alice', 'age': 25} print(dic.popitem()) # ('age', 25) print(dic) # {'name': 'Alice'}
-
clear()
清空字典中的所有键值对。
pythondic = {'name': 'Alice', 'age': 25} dic.clear() print(dic) # {}
6.4 查找和判断
-
in
和not in
判断键是否存在于字典中。
pythondic = {'name': 'Alice', 'age': 25} print('name' in dic) # True print('city' not in dic) # True
-
len(dic)
返回字典中键值对的数量。
pythondic = {'name': 'Alice', 'age': 25} print(len(dic)) # 2
6.5 复制字典
-
copy()
返回字典的浅拷贝。pythondic = {'name': 'Alice', 'age': 25} dic_copy = dic.copy() print(dic_copy) # {'name': 'Alice', 'age': 25}
6.6 字典推导式
虽然不是方法,但字典推导式是一种非常强大的创建字典的方式。
python
squares = {x: x**2 for x in range(5)} # {0: 0, 1: 1, 2: 4, 3: 9, 4: 16}
6.7 其他方法
-
fromkeys(seq[, value])
创建一个新字典,使用seq
中的元素作为键,value
作为所有键的默认值(默认为None
)。pythonkeys = ['name', 'age', 'city'] dic = dict.fromkeys(keys, 'Unknown') print(dic) # {'name': 'Unknown', 'age': 'Unknown', 'city': 'Unknown'}
总结
字典是 Python 中非常强大的数据结构,掌握其方法对于处理键值对数据非常重要。以下是常用方法的快速回顾:
方法 | 功能描述 |
---|---|
get(key[, default]) |
获取键对应的值,键不存在时返回默认值 |
keys() |
返回所有键的视图 |
values() |
返回所有值的视图 |
items() |
返回所有键值对的视图 |
dict[key] = value |
添加或修改键值对 |
update([other]) |
用另一个字典或键值对更新当前字典 |
setdefault(key[, default]) |
获取键对应的值,键不存在时插入默认值 |
pop(key[, default]) |
删除并返回键对应的值 |
popitem() |
删除并返回最后一个键值对 |
clear() |
清空字典 |
copy() |
返回字典的浅拷贝 |
fromkeys(seq[, value]) |
使用序列创建字典,并设置默认值 |
in 和 not in |
判断键是否存在于字典中 |
len(dic) |
返回字典中键值对的数量 |
通过灵活运用这些方法,可以高效地操作字典数据。
7. 集合
集合是无序且不重复的元素集合,支持集合运算。
python
set1 = {1, 2, 3, 4}
set2 = {3, 4, 5, 6}
print(set1 | set2) # 并集: {1, 2, 3, 4, 5, 6}
print(set1 & set2) # 交集: {3, 4}
8. 条件控制
Python 使用 if
、elif
、else
进行条件控制。
python
age = 18
if age < 18:
print("未成年")
elif age == 18:
print("刚成年")
else:
print("成年")
9. 循环语句
Python 提供了 for
和 while
循环。
- for 循环:遍历序列或迭代器。
- while 循环:在条件为真时重复执行。
python
# for 循环
for i in range(5):
print(i) # 0 1 2 3 4
# while 循环
count = 0
while count < 5:
print(count) # 0 1 2 3 4
count += 1
10. 分享博客
在学习过程中,我参考了以下博客和资源,帮助我更好地理解 Python 的基础知识:
这些资源提供了详细的解释和示例代码,非常适合初学者和进阶学习者。
总结
通过本次学习,我对 Python 的基础语法有了更深入的理解,尤其是运算符、数据类型、条件控制和循环语句的使用。这些基础知识是编写更复杂程序的基础,未来我将继续深入学习 Python 的高级特性和应用场景。
希望这篇总结对你有所帮助!如果你有任何问题或建议,欢迎在评论区留言讨论。