小甲鱼第十课:列表:一个“打了激素”的数组总结反思

0. 自己动手试试看,并分析在这种情况下,向列表添加数据应当采用哪种方法比较好?
假设给定以下列表:
member = [‘小甲鱼’, ‘黑夜’, ‘迷途’, ‘怡静’, ‘秋舞斜阳’]
要求将列表修改为:
member = [‘小甲鱼’, 88, ‘黑夜’, 90, ‘迷途’, 85, ‘怡静’, 90, ‘秋舞斜阳’, 88]

错误做法:
member = ['小甲鱼','黑夜','迷途','易经','斜阳']
member.insert(1,88)
member.insert(2,90)
member.insert(3,85)
member.insert(4,90)
member.insert(5,88)
print(member)
#没有考虑到每个字符串就是一位小甲鱼为0,后面为2,黑夜为3以此类推,因此正确的做法应该是:
member = ['小甲鱼','黑夜','迷途','易经','斜阳']
member.insert(1,88)
member.insert(3,90)
member.insert(5,85)
member.insert(7,90)
member.insert(9,88)
print(member)

1. 利用 for 循环打印上边 member 列表中的每个内容

member = ['小甲鱼',88,'黑夜',90,'迷途',85,'易经',90,'斜阳',88]
for i in member:
    print(i)

2. 上一题打印的样式不是很好,能不能修改一下代码打印成下图的样式呢?【请至少使用两种方法实现】(大概的样式就是如下图,网上没有图)

小甲鱼 88
黑夜 90
迷途 85
易经 90
斜阳 88
**法一:由于不知道怎么直接打印列表当中的东西,因此必须通过for+in循环来将列表当中的字符串提取出来打印**、

member = ['小甲鱼',88,'黑夜',90,'迷途',85,'易经',90,'斜阳',88]
count = 2
for i in member:
    if count%2 == 0:
        print(i,end=" ")
    else:
        print(i)
    count += 1
    
**法一改进:知道了直接打印列表中字符串打印方式后**

#首先法一改进是在知道可以用print(member[count],member[count+1]))基础上,这样可以直接输入列表的值
#于是可以将列表数字化,在引入一个conut进行循环变量
member = ['小甲鱼',88,'黑夜',90,'迷途',85,'易经',90,'斜阳',88]
lengenty= len(member)
count = 0
while count < lengenty:
    print(member[count],member[count+1])
    count += 2
    
再次改进的法二:

member = ['小甲鱼',88,'黑夜',90,'迷途',85,'易经',90,'斜阳',88]
for i in range(len(member)):
    if i%2 == 0:
      print (member [i], member [i+1])
#for 和 range 的日常狼狈为奸。其明显节约了定义一个count和while循环的时间,直接把表变成数值变量并循环,然后在满足数值要求的情况下输出列表的值

总结:1.列表中append,extend,insert的运用
2.range for 狼狈为奸的好处

发布了17 篇原创文章 · 获赞 1 · 访问量 363

猜你喜欢

转载自blog.csdn.net/cccccccaaaaaaaaa/article/details/105220783