|
楼主 |
发表于 2021-8-8 11:24:00
|
显示全部楼层
本帖最后由 Python初学者8号 于 2021-8-8 11:39 编辑
好了 两个问题我的解答是
方法一:
用append:
想法很简单。既然append是只能在末尾添加,那么办法,只能拆开member再来append grade咯member = ['小甲鱼', '黑夜', '迷途', '怡静', '秋舞斜阳']
grade = [88, 90, 85, 90, 88]
total=[]
for n in range(0,5):
total.append(member[n])
total.append(grade[n])
print(total)
用insert:
这个稍微麻烦点想起来,不是很直观。首先写出最终形态,['小甲鱼', 88, '黑夜', 90, '迷途', 85, '怡静', 90, '秋舞斜阳', 88],然后根据其index来研究。
就可以发现其实在member上面来insert就可以了,就是不断插队的感觉,只要是按照grade的先后顺序来插队,就不用担心index out of range 的问题了member = ['小甲鱼', '黑夜', '迷途', '怡静', '秋舞斜阳']
grade = [88, 90, 85, 90, 88]
for i,j in zip([1,3,5,7,9],grade):
member.insert(i,j)
print(member)
方法二
我觉得这个更简单了,直接覆盖多简单啊,直接写,但是我想到这个,不用自己打字member = ['小甲鱼', '黑夜', '迷途', '怡静', '秋舞斜阳']
grade = [88, 90, 85, 90, 88]
new = list(range(0,10))
for i,j in zip(range(0,10,2),range(0,5)): # 0 2 4 6 8偶数开始是member 0 1 2 3 4
new[i]=member[j]
for i,j in zip(range(1,10,2),range(0,5)):
就像军训报单数双数自己形成两列一样
|
|