【发布时间】:2016-10-25 22:39:56
【问题描述】:
使用 python 3 和 jupyter notebook(我必须,上课)。
我有一个函数,它通过循环多次并从另一个列表中附加一个随机选择的元素来创建一个列表。但是当我使用该函数时,它给出的列表会在新行上显示每个元素。为什么?可以改吗?
代码:
def create_board(length=32,seed=0,types=2):
"""
Creates a one-dimensional game board of randomly placed
letters, using as many as are specified.
"""
if types>26:
print("No, try a number smaller than 27.")
else:
board = []
letters = ["A","B","C","D","E","F","G","H","I","J","K","L","M",
"N","O","P","Q","R","S","T","U","V","W","X","Y","Z"]
for i in range(length):
val=random.randint(0,(types-1))
board.append(letters[val])
return board
然后两个
print(create_board())
和
create_board()
board
输出创建的列表,但每个元素都换行:
['B',
'B',
'A',
'B',
'A',
等等。
【问题讨论】:
-
这只是 Jupyter 试图以更具可读性的方式显示列表(但没有成功)。无论 Jupyter 选择在多少行上显示元素,列表都是相同的。
-
从 Linux 命令行运行它,我得到了一个不错的水平列表。
-
你可以把它变成像 print(', '.join(create_board())) 这样的字符串
标签: python list function python-3.x jupyter-notebook