1、第6章-2 一帮一
“一帮一学习小组”是中小学中常见的学习组织方式,老师把学习成绩靠前的学生跟学习成绩靠后的学生排在一组。本题就请你编写程序帮助老师自动完成这个分配工作,即在得到全班学生的排名后,在当前尚未分组的学生中,将名次最靠前的学生与名次最靠后的异性学生分为一组。
我的代码:
n = int(input())
ClassSex = []
ClassName = []
index = 0
index_reverse = -1
for i in range(n):
sex, name = input().split()
ClassSex.append(sex)
ClassName.append(name)
while index_reverse >= -len(ClassSex):
if ClassSex[index] != ClassSex[index_reverse]:
print("{:} {:}".format(ClassName[index], ClassName[index_reverse]))
del ClassSex[index]
del ClassName[index]
del ClassSex[index_reverse]
del ClassName[index_reverse]
index_reverse = -1
else:
index_reverse -= 1
他人的代码:
N = int(input())
f = []
m = []
peo = []
for i in range(N):
temp = input().split()
peo.append(temp[1])
if temp[0] == '0':
f.append(temp[1])
else:
m.append(temp[1])
for i in range(int(N / 2)):
if peo[i] in f:
j = f.index(peo[i])
print(peo[i] + ' ' + m[-j - 1])
else:
j = m.index(peo[i])
print(m[j] + ' ' + f[-j - 1])
反思:
①知识回顾:对列表使用[::-1]使其返回倒置后的列表,而使用同样可以使得列表倒置的reverse()却没有返回值
他人的代码中学习:
②自动格式转换和分类识别存放
在temp = input().split()中,输入"0 Amy"后,得到的temp会自动转化为list类型,提取temp[0],得到“0”;提取temp[1],得到”Amy“
## 2、第6章-3 列表或元组的数字元素求和
我的代码:
```python
a = eval(input())
result = 0
for i in a: