《操作列表》
《遍历整个列表》
>高效的处理任何长度的列表。
>对列表中的每个元素执行相同的操作时for循环语句。
start = [
'down'
,
'int'
,
'tow-way'
,
'exstart'
,
'exchange'
,
'looding'
,
'full'
]
for
ospf
in
start:
#
从
ospfs
中取出一个名字 并将其存储在变量名
ospf
中;
print
(ospf)
输出:
>深入探究for
>对于列表中的每个元素,都将执行循环指定的操作。
dogs = [
'1'
,
'2'
,
'3'
]
for
dog
in
dogs:
print
(dog)
cats = [
'4'
,
'5'
,
'6'
]
for
cat
in
cats:
print
(cat)
>for循环中执行更多的操作
packets = [
'hello'
,
'DBD'
,
'LSR'
,
'LSU'
,
'LSAck'
]
for
packet
in
packets:
print
(packet.title()+
",This is packet!"
)
print
(
"........"
+ packet.title() +
".
\n
"
)
#"\n"
换行符
,".title()
首字母大写
"
输出:
>
放在for语句后面,且不缩进。将不会加入for执行中
packets = [
'hello'
,
'DBD'
,
'LSR'
,
'LSU'
,
'LSAck'
]
for
packet
in
packets:
print
(packet.title()+
",This is packet!"
)
print
(
"........"
+ packet.title() +
".
\n
"
)
#"\n"
换行符
,".title()
首字母大写
"
print
(
"111"
)
#
放在
for
语句后面,且不缩进。将不会加入
for
执行中。
《避免缩进错误》
>忘记缩进
>不必要的缩进
ospf = [
"1"
]
print
(ospf)
错误提示:
>遗漏了冒号
packets = [
'hello'
,
'DBD'
,
'LSR'
,
'LSU'
,
'LSAck'
]
for
packet
in
packets
#此处遗忘了冒号
print
(packet.title()+
",This is packet!"
)
print
(
"........"
+ packet.title() +
".
\n
"
)
#"\n"
换行符
,".title()
首字母大写
"
print
(
"111"
)
#
放在
for
语句后面,且不缩进。将不会加入
for
执行中。
错误提示:
语法错误
《创建数字列表》
列表非常适用与存储数字集合
>使用函数range()
函数range()能够轻松的生成一系列的数字
for
value
in
range
(
1
,
5
):
print
(value)
#
第一个数字开始(
1
),第二个数字结束(
5
);
输出结果:
只打印数字1-4
>使用range()创建数字列表
创建数字列表时,可使用list()将range()的结果之间转换成列表
number =
list
(
range
(
1
,
6
))
print
(number)
even_number =
list
(
range
(
2
,
11
,
2
))
print
(even_number)
squares = []
for
value
in
range
(
1
,
11
):
# square = value**2
# squares.append(square)
squares.append(value**
2
)
#
简化上两行
print
(squares)
输出结果
>对数字列表执行简单的统计计算
squares = []
for
value
in
range
(
1
,
11
):
# square = value**2
# squares.append(square)
squares.append(value**
2
)
#
简化上两行
print
(squares)
print
(
min
(squares)) #最小值
print
(
max
(squares))
#最大值
print
(
sum
(squares))
#总和值
输出:
>列表解析
squares = []
for
value
in
range
(
1
,
11
):
# square = value**2
# squares.append(square)
squares.append(value**
2
)
#
简化上两行
print
(squares)
squares = [value**
2
for
value
in
range
(
1
,
11
)]
print
(squares)
#
最终简化
输出结果:
>复制列表