我得到错误的python输出格式。我究竟做错了什么?

时间:2019-02-21 18:39:31

标签: python

这里的新手总数。仅学习Python约2周。因此,请提前接受我的道歉。

代码如下:

import random

name = file = open('IT AMG Employee Names.csv', 'r')

names = file.readlines()

file.close()

print('Hello, Welcome to the IT AMG radom name generator.')

name = (input('What is your name? '))

random_name_qty = (int(input(name + ', How many random names are required? ')))

random_name = (random.sample(names, random_name_qty))

print('Here are your ' + str(random_name_qty) + ' random names: ', random_name)

以下是输出:

Hello, Welcome to the IT AMG radom name generator.
What is your name? Richy
Richy, How many random names are required? 4
Here are your 4 random names:  ['Julias Vassqusdfez\n', 'Asfvid Busshgbllo Castrsfo\n', 'Jay Ansddreadis\n', 'Andreas Ecvasria\n]

-我认为它是一个非常新手的愚蠢的小错误 如何清理格式正确的列表的输出?

感谢您的帮助。 里奇。

2 个答案:

答案 0 :(得分:1)

您的random_name是一行list,因此当您打印random_name时,它将是list中的string representation(即{{1} })

您应该做的是遍历['Julias Vassqusdfez\n', ...]并逐个打印名称:

list

注意:由于每行中都有一个print('Here are your ' + str(random_name_qty) + ' random names: ' for i in random_name: print(i) (新行),因此,如果您不想使用两个新行,则可以改为:

\n

答案 1 :(得分:0)

只需使用

print('Here are your ' + str(random_name_qty) + ' random names: ', ", ".join(random_name))

这会将您的列表加入到一个逗号分隔的列表中! 尽管您可能希望根据其显示方式将其中的\ n去除掉……但是可以使用.strip()

对任何字符串进行此操作