三种for循环
不依赖于索引取值
for 变量名 in 容器类型
for break
for continue
for循环语法结构
for 变量名 in 容器:
代码1
代码2
len()
获取数据类型(容器类型)的个数
字符串 获取的是字符串中字符的个数
range()
range在python2与python3中的区别(** ** *)
python2中
- range其实就是一个列表,print(range(…)),结果是一个[.,.,.] 列表,打印全部数值
- xrange其实就是你python3中的range,print(range(…)),结果是 xrange (…,…),只是一个迭代器
C:\Users\admin>python2
Python 2.7.14 (v2.7.14:84471935ed, Sep 16 2017, 20:19:30) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> print(range(0,3))
[0, 1, 2]
>>> print(xrange(0,3))
xrange(3)
>>> for i in xrange(0,3):
... print(i)
...
0
1
2
>>>
python3中range是一个迭代器,需要值的时候才给
C:\Users\admin>python3
Python 3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:54:40) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> print(range(0,3))
range(0, 3)
>>> for i in range(0,3):
... print(i)
...
0
1
2
>>>
案例:
C:\Users\admin>python3
Python 3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:54:40) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
# for循环按照索引取值
>>> list = ['a','b','c']
>>> n = 0
>>> while n < len(list):
... print(n,list[n])
... n += 1
...
0 a
1 b
2 c
>>>
# 遍历字典
>>> info = {'name':'Ajax','age':18} #定义一个列表
>>> for item in info:
... print(item) #for从字典中只能取出字典中的key,因为字典中获取value的方式唯一通过key
... print(info[item]) #打印从字典中通过key来获取value,key为变量item
...
name
Ajax
age
18
>>>
#range顾头不顾尾,即取1-2的值
>>>> for i in range(1,3):
... print(i)
...
1
2
>>>
#列表中跳过
>>> name_list = ['a', 'b', 'c', 'd']
>>> for name in name_list:
... if name == 'b':continue
... print(name)
...
a
c
d
>>>