python各种操作列表的方法及案例

一、循环的使用方法

names = ["张真","刘德华","哈林","谢霆锋","张柏芝"]
for name in names:
  print("你好!"+ name)
  print("i love you" + name)

二、使用函数range(),配合循环轻松生成一组数字

#以下代码好像应该打印数字1~5,但实际上它不会打印数字5:
for i in range(1,5):
  print(i)

#注意:函数range() 让Python从你指定的第一个值开始数,并在到达你指定#的第二个值后停止,因此输出不包含第二个值(这里为5)。

三、使用range() 创建数字列表

# 要创建数字列表,可使用函数list() 将range() 的结果直接转换为列表。如果将range() 作为list() 的参数,输出将为一个数字列表。
inum = list(range(1,6))
print(inum)
print("上边代码输出的是:[1,2,3,4,5]")

#使用函数range() 时,还可指定步长。例如,下面的代码打印1~10内的偶数:
inum = list(range(2,11,2))   #range()括号中为三个数的时候,第一个数是起始数,第二个是终止数,第三个数是步长
print(inum)
print("上边代码输出的是:[2,4,6,8,10]")

循环与range()方法配合使用小案例,把1--10的二次方,打印到一组列表中

message = []               #声明一个空列表用于存储列表值
for num in range(1,11):    #使用循环打印1到10
  nums = num**2            #在循环内计算每个值的2次方,**代表乘方运算
  message.append(nums)     #使用append()方法将计算的结果添加到类表中
print(message)             #结束循环,打印列表

# 更加简洁的一种写作方法
message = []
for num in range(1,11):
  message.append(num**2)   #直接把计算的值添加到列表中,不需要再设置变量
print(message)

# 列表解析,大白话讲就是精简以上代码,将以上代码合成一行的另一种写法
# 注意:将所有的过程赋给变量,用方括号包起来,运算在前,循环在后,for语句后没有冒号
message = [num**2 for num in range(1,6)]
print(message)

四、对数字列表执行简单的统计计算,找出数字列表中的最小值,最大值,列表值的总和

 最小值 min()
 最大值 max() 
 总   和 sum() 
############# 案例 #################

dlist = [1,2,3,4,5,6,7,8,9,0]
x = min(dlist)   # 最小值
print(x)
d = max(dlist)   # 最大值
print(d)
h = sum(dlist)   # 总  和
print(h)

####### 案例练习 #######

01、用for循环打印数字1到20
for num in range(1,21):
  print(num)
02、创建一个列表,打印1-100000,用for循环打印出来,并查看最大值和最小值,并且求和
message = []
for num in range(1,100001):
  nums = message.append(num)
# 打印1-100000列表
print(message) 
# 查看最小值和最大值,并且求和 
x = min(message)
d = max(message)
h = sum(message)
print(h)
03、给range()传递一个参数,打印出1-20的奇数
for num in range(1,21,2):
  print(num)
04、创建一个列表,其中包含3~30内能被3整除的数字;再使用一个for 循环将这个列表中的数字都打印出来。
message =[]
for num in range(3,31,3):
  message.append(num)
print(message)
05、列表解析打印出1到10的每个数的立方
message = [num**3 for num in range(1,11)]
print(message)

五、【切片】使用列表的一部分元素

要创建切片,可指定要使用的第一个元素和最后一个元素的索引。与函数range() 一样,Python在到达你指定的第二个索引前面的元素后停止。要输出列表中的前三个元素,需
要指定索引0~3,这将输出分别为0 、1 和2 的元素。
players = ["aaa","fff","rrr","yyy","uuu"]
print(players[0:3])   # 打印出来的是索引为0,1,2的值
print(players[1:4])   # 打印出来的是索引为1,2,3的值
print(players[:4])    # 未设置起始索引值,将自动从0开始
print(players[2:])    # 未设置结束索引值,将自动从起始值开始到最后一个结束
print(players[-3:])   # 负数可以切出最后几位
# 遍历切片,我们只遍历了前三名0,1,2
for player in players[:3]:
  print(player.title())
  print(player.lower())
  print(player.upper())

5.1复制列表

myfoods = ["aaa","fff","rrr","yyy","uuu"]
friendfoods = myfoods[:]    # 复制列表,这里复制的将是副本,
friendfoods.append("ooo")
#验证是否真的是两个列表
print(myfoods)
print(friendfoods)

备注:friendfoods = myfoods 这种复制方法,相当于把新变量与原来的变量关联起来,他们实际上是指向同一个列表,操作其中一个,另一个也会随之改变

六、元组

一、元组相对于列表
# 01、元组是不可修改的
# 02、元组用一对()包裹起来
# 03、元组的每个值的使用和列表一样都可以用索引来调取
# 04、相比于列表,元组是更简单的数据结构。如果需要存储的一组值在程序的整个生命周期内都不变,可使用元组。
dlists = (200,500)
print(dlists[0])    # 用索引调用列表的值
A、遍历元组,与列表一样使用for循环
for dlist in dlists:
  print(dlist)
B、修改元组变量
# 虽然不能修改元组的元素,但可以给存储元组的变量赋值。因此,如果要修改前述矩形的尺寸,可重新定义整个元组:
dlists = (200,300)
dlists = (300,500)
print(dlists)

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章