Day2 Python基础(二)
目录
一、操作列表
(一)遍历整个列表
- 使用for循环打印数组:
a = [1, 2, 3, 4, 5]
for b in a:
print(b)
(二)创建数值列表
- 函数rangle()可以轻松生成一系列数字
>>> for value in range(1, 6):
>>> print(value)
1
2
3
4
5
- 使用angle()创建数字列表
>>> number = list(range(1, 6))
>>> print(number)
[1, 2, 3, 4, 5]
>>> number = list(range(3, 11, 2)) # 从3开始,不断增加2,直到到达11
>>> print(number)
[3, 5, 7, 9]
>>> squares = [] # 生成1-10的平方
>>> for value in range(1, 11):
>>> squares.append(value ** 2)
- 对数字列表进行简单的统计计算
>>> a = [1, 2, 3, 4, 5, 6, 7]
>>> min(a)
1
>>> max(a)
7
>>> sum(a)
28
- 列表解析
首先指定一个列表名,然后指定左方括号,并定义一个表达式。接下来写一个for循环,再加上右方括号。
>>> square = [value ** 2 for value in range(1,11)]
>>> print(square)
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
(三)使用列表的一部分
- 切片
>>> a = [1, 2, 3, 4, 5, 6, 7]
>>> print(a[0:3]) # 输出列表中的前三个元素
[1, 2, 3]
>>> print(a[5:]) # 从第六位显示到结尾
[6, 7]
>>> print(a[:4]) # 从头显示到第四位
[1, 2, 3, 4]
>>> print(a[-3:]) # 打印最后三位
[5, 6, 7]
- 遍历切片
a = [1, 2, 3, 4, 5]
for b in a[:3]:
print(b)
- 复制列表
a = [1, 2, 3, 4, 5]
b = a[:]
(四)元组
创建后无法更改
- 定义元组
a = (1, 2, 3, 4, 5)
- 遍历元组的所有值
a = (1, 2, 3, 4, 5)
for b in a:
print(b)
- 修改元组变量
对整个元组重新赋值
a = (1, 2, 3, 4, 5)
a = (1, 2, 3)
(二)if 语句
(一)条件测试
- 关系运算符
a = 2
a == 2 # 判断是否相等,返回True
a != 2 # 判断事都不相等,返回False
a > 2 # 大于、小于、大于等于、小于等于
a < 2
a >= 2
a <= 2
b = 2
a is b # 判断两个变量引用的是否是同一个对象,返回Flase
a is not b # 同上,返回True
- 逻辑运算符
运算优先级:() > not > and > or
>>> age_0 = 22
>>> age_1 = 18
>>> age_0 >= 21 and age_1 >= 21
False
>>> age_0 >= 21 or age_1 >= 21
True
>>> not 0
True
- 检查特定值不在列表中
>>> a = [1, 2, 3, 4, 5, 6, 7]
>>> 5 in a
True
>>> 5 not in a
False
(二)if 语句
- if-elif-else 语法
age = 12
if age < 4:
print("A")
elif age < 18:
print("B")
else:
print("C")
(三)字典
(一)使用字典
字典用放在{}中的一系列键-值对表示
- 定义字典
b = {}
a = {'color': 'green', 'points': 5}
- 访问字典中的值
>>> a = {'color': 'green', 'points': 5}
>>> print(a['color'])
green
- 添加键-值对
>>> a = {'color': 'green', 'points': 5}
>>> a['x'] = 5
>>> print(a)
{'color': 'green', 'points': 5, 'x': 5}
- 添加字典中的值
>>> a = {'color': 'green', 'points': 5}
>>> a['points'] = 6
>>> print(a)
{'color': 'green', 'points': 6}
- 删除键-值对
>>> a = {'color': 'green', 'points': 5}
>>> del a['points']
>>> print(a)
{'color': 'green'}
(二)遍历字典
- 遍历所有的键-值对
使用方法item()返回一个键-值对的列表
>>> a = {'color': 'green', 'points': 5}
>>> for b, c in a.items():
>>> print(b, ':', c)
color : green
points : 5
- 遍历所有的键
当不需要字典中的值,可以使用方法keys(),也可以省略。
>>> a = {'color': 'green', 'points': 5}
>>> for b in a.keys():
>>> print(b)
color
points
>>> for b in a:
>>> print(b)
color
points
注:keys()方法并非只能用于遍历;事实上,他返回一个列表,其中包含字典中的所有键。
a = {'color': 'green', 'points': 5}
print('color' not in a.keys())
- 对字典中的键排序
>>> a = {'points': 5, 'color': 'green'}
>>> print(sorted(a))
>>> print(a)
['color', 'points']
{'points': 5, 'color': 'green'}
- 遍历字典中的所有值
通过对包含重复元素的列表调用set(),可以让python找出列表中独一无二的元素,并使用这些元素来建立一个集合(集合类似于列表,但元素独一无二)。
>>> a = {'color': 'green', 'points': 5, 'x': 5}
>>> for b in a.values():
>>> print(b)
green
5
5
>>> for b in set(a.values()):
>>> print(b)
5
green
(三)嵌套
- 字典列表
>>> a = {'color': 'green', 'points': 5}
>>> b = {'color': 'green', 'points': 6}
>>> c = {'color': 'green', 'points': 7}
>>> news = [a, b, c]
>>> for new in news:
>>> print(new)
{'color': 'green', 'points': 5}
{'color': 'green', 'points': 6}
{'color': 'green', 'points': 7}
- 在字典中储存列表
>>> A = {'a': 5, 'b': [1, 2]}
>>> print(A['b'])
[1, 2]
- 在字典里存储字典
users = {
'张三': {
'姓': '张',
'名': '三',
},
'李四': {
'姓': '李',
'名': '四',
}
}
for name, info in users.items():
print("姓名:", name)
print("姓:", info['姓'])
print("名:", info['名'], "\n")
运行结果如下:
姓名: 张三
姓: 张
名: 三
姓名: 李四
姓: 李
名: 四
注意:表示每位用户的字典的结构都相同,虽然python并没有这样的要求,但这样使得嵌套的字典处理起来更容易。