python涉及的领域:大数据、图像处理、Web开发、运维、爬虫、科学计算、自动化。
一、列表
处理复杂数据
肖申克的救赎,1994,弗兰克.德兰邦特,142mins
蒂姆.罗宾斯
摩根,威廉姆,克兰西
霸王别姬,1993,陈凯歌,172mins
张国荣
张丰毅,巩俐,葛优
大话西游,1995,刘镇伟,95mins
周星驰
吴孟达,朱茵,莫文蔚,蔡少芬
一个简短的python简短列表:
movies = ["肖申克的救赎","霸王别姬”,"大话西游"]
1.在数据两边加引号,将各个电影名转换成字符串;
2.用逗号将列表项与下一项分隔开;
3.在列表的两边加上开始和结束中括号;
4.使用赋值操作符(=)将这个列表赋值至一个标识符(以上代码中的movies)。
列表从第0项开始,然后是第1项,第2项...。
内存中的列表,和入栈、出栈一样,先进后出。
使用中括号法访问列表数据:print(movie[0])
分片、打印、统计列表长度len、追加append、合并extend、删除remove
len(movies) #3
movies.append("无间道") #movies = ["肖申克的救赎","霸王别姬”,"大话西游","无间道"]
num = [1,2,3]
movies.extend(num) #movies = ["肖申克的救赎","霸王别姬”,"大话西游","无间道",1,2,3]
movies.remove(1) #movies = ["肖申克的救赎","霸王别姬”,"大话西游","无间道",2,3]
movies.remove("无间道") #movies = ["肖申克的救赎","霸王别姬”,"大话西游",2,3]
dir(movies) #可以查看它所有的方法,加下划线的为描述符;除此之外,有'append','clear','copy','count','extend','index','insert','pop','remove','reverse','sort'
movies.sort? #查看帮助
movies.insert(1,1994) #movies = ["肖申克的救赎",1994,"霸王别姬”,"大话西游",2,3]
fav_movies = ["肖申克的救赎","霸王别姬"]
for each_flick in fav_movies:
print(each_flick)
for i in movies:
print(i) #打印movies列表中的每一项
for循环处理任意大小的列表:
for 目标标识符 in 列表:
(缩进)列表处理代码
另外一种循环方法:
count = 0
while count < len(movies):
print(movies[count])
count = count+1
列表项可以是一个列表:
movies = ["肖申克的救赎",1994,"弗兰克.德兰邦特",142,["蒂姆.罗宾斯",["摩根","威廉姆","克兰西"]]]
print(movies[4]) #["蒂姆.罗宾斯",["摩根","威廉姆","克兰西"]]
print(movies[4][0]) #"蒂姆.罗宾斯"
print(movies[4][1]) #["摩根","威廉姆","克兰西"]
print(movies[4][1][0]) #"摩根"
在列表中查找列表:
if 某个条件满足:
"True"组
else:
"False"组
num = [1,2,3]
isinstance(num,list) #Ture
num = len(num)
isinstance(num,list) #False
isinstance(num,int) #Ture,isinstance用来检测某个特定的标识符是否包含某种特定类型的数据
处理一个嵌套列表:
for each_item in movies:
if isinstance(each_item,list):
for nested_item in each_item:
print(nested_item)
else:
print(each_item)
处理多层嵌套列表
for each_item in movies:
if isinstance(each_item,list):
for nested_item in each_item:
if isinstance(nested_item,list):
for deeper_item in nested_item:
print(deeper_item)
print(deeper_item)
else:
print((nested_item)
else:
print(each_item)
python创建一个函数:
def 函数名(参数): #( 参数可选,()是必需的 )
函数代码组
递归:
def print_lol(the_list):
for each_item in the_list:
if isinstance(each_item,list):
print_lol(each_item)
else:
print(each_item)
print_lol(movies)