我有一个full_list如下:
full_list = [[[-180, 90], [-180, 80], [-175, 80], [-175, 90]], [[-180, 80], [-180, 70], [-175, 70], [-175, 80]], [[-180, 70], [-180, 60], [-175, 60], [-175, 70]], [[-180, 60], [-180, 50], [-175, 50], [-175, 60]]]
如何生成名为ans的列表如下?
ans = [[[-180, 90], [-180, 80], [-175, 80], [-175, 90]],
[[-180, 80], [-180, 70], [-175, 70], [-175, 80]],
[[-180, 70], [-180, 60], [-175, 60], [-175, 70]],
[[-180, 60], [-180, 50], [-175, 50], [-175, 60]]]
两个列表都相同,唯一的区别是后者被分成行。
答案 0 :(得分:5)
你在谈论漂亮的印刷吗?你的清单就是这样。
>>> full_list = [[[-180, 90], [-180, 80], [-175, 80], [-175, 90]], [[-180, 80], [-180, 70], [-175, 70], [-175, 80]], [[-180, 70], [-180, 60], [-175, 60], [-175, 70]], [[-180, 60], [-180, 50], [-175, 50], [-175, 60]]]
>>> from pprint import pprint
>>> pprint(full_list)
[[[-180, 90], [-180, 80], [-175, 80], [-175, 90]],
[[-180, 80], [-180, 70], [-175, 70], [-175, 80]],
[[-180, 70], [-180, 60], [-175, 60], [-175, 70]],
[[-180, 60], [-180, 50], [-175, 50], [-175, 60]]]
答案 1 :(得分:1)
如另一个答案所述,pprint
是自然而然的方式。
但根据您的确切需求,您也可以这样做:
print(*full_list, sep='\n')
# Output:
[[-180, 90], [-180, 80], [-175, 80], [-175, 90]]
[[-180, 80], [-180, 70], [-175, 70], [-175, 80]]
[[-180, 70], [-180, 60], [-175, 60], [-175, 70]]
[[-180, 60], [-180, 50], [-175, 50], [-175, 60]]
要自定义一位,您可以使用range
:
def my_custom_printer(full_list):
for i in range(0, len(full_list), 2):
try:
print("{}, {}".format(full_list[i], full_list[i+1]))
except IndexError:
# len(full_list) is odd, so just print the last index
print(full_list[i])
my_custom_printer(full_list)
# Output:
[[-180, 90], [-180, 80], [-175, 80], [-175, 90]], [[-180, 80], [-180, 70], [-175, 70], [-175, 80]]
[[-180, 70], [-180, 60], [-175, 60], [-175, 70]], [[-180, 60], [-180, 50], [-175, 50], [-175, 60]]
但后来它变得有点脏...主要是因为实际数据及其表示不再严格一致