2024-09-29 02:25:40 发布
网友
我的程序中有一个列表:grid=[]
网格当前以如下格式保存字符串行:
qwertyui
asdfghjk
我想更改列表,使其格式更改为:
所以在某种意义上,这个列表会顺时针旋转90度。我还想将新格式化的字符串存储在另一个名为diff_grid[]的列表中
使用zip(),记住它将从每个项目中获取第一个元素,然后是第二个元素,依此类推
zip()
>>> strings = ['qwertyui', 'asdfghjk', 'zxcvbnml'] >>> for item in zip(*(strings[::-1])): ... print(item) ... ('z', 'a', 'q') ('x', 's', 'w') ('c', 'd', 'e') ('v', 'f', 'r') ('b', 'g', 't') ('n', 'h', 'y') ('m', 'j', 'u') ('l', 'k', 'i')
如果您想要('q', 'a', 'z')而不是('z', 'a', 'q'),您就不需要[::-1]来反转字符串的list
('q', 'a', 'z')
('z', 'a', 'q')
[::-1]
list
如果不想在输出中看到tuple结构,可以使用join()或解压缩tuple并使用自定义end参数:
tuple
join()
end
>>> for item in zip(*(strings[::-1])): ... print(*item, sep='') ... zaq xsw cde vfr bgt nhy mju lki
假设网格是所引用字符串的列表:
>>> grid = ["abc", "def", "xyz"]
试试看
>>> diff_grid = [''.join(i) for i in zip(*grid[::-1])] >>> diff_grid ['xda', 'yeb', 'zfc']
zip(*grid)将对grid的字符串应用zip运算符。 注意,由于zip操作的应用顺序,您必须反转grid(grid[::-1])
zip(*grid)
grid
(grid[::-1])
使用
zip()
,记住它将从每个项目中获取第一个元素,然后是第二个元素,依此类推如果您想要
('q', 'a', 'z')
而不是('z', 'a', 'q')
,您就不需要[::-1]
来反转字符串的list
如果不想在输出中看到
tuple
结构,可以使用join()
或解压缩tuple
并使用自定义end
参数:假设网格是所引用字符串的列表:
试试看
zip(*grid)
将对grid
的字符串应用zip运算符。 注意,由于zip操作的应用顺序,您必须反转grid
(grid[::-1])
相关问题 更多 >
编程相关推荐