-
翻过高山走不出你
只需重建列表并使用切片和添加生成新字符串:lst = ['Hello', 'what', 'is', 'your', 'name']result = [x[1:]+x[0] if x else "" for x in lst]结果:['elloH', 'hatw', 'si', 'oury', 'amen'](注意允许对空字符串健壮的三元表达式,因为空字符串的情况下 intx[0]会引发IndexError。没有三元表达式,我们可以使用[x[1:]+x[0:1] for x in lst]which 做同样的事情)
-
陪伴而非守候
检查以下代码:mylist = ['Hello', 'what', 'is', 'your', 'name']mylist = [(mylist[i][1:] + mylist[i][0:1]) for i in range(0,len(mylist))]print(mylist)输出 :['elloH', 'hatw', 'si', 'oury', 'amen']
-
交互式爱情
您可以使用切片和索引:def shift(s): return s[1:] + s[0]data = ['Hello', 'what', 'is', 'your', 'name']result = [shift(s) for s in data]print(result)输出['elloH', 'hatw', 'si', 'oury', 'amen']该语句result = [shift(s) for s in data]被称为列表理解,相当于以下内容:result = []for s in data: result.append(shift(s))最后另一种选择是使用map:result = list(map(shift, data))函数 map 将移位应用于数据的每个元素,但它返回(在 Python 3 中)一个可迭代对象,因此您需要将其转换为列表。