Python 如果列表中有两个以上的值,则以逗号分隔打印

Python 如果列表中有两个以上的值,则以逗号分隔打印,python,python-2.7,Python,Python 2.7,我的输入1: values = ['1','2'] 预期打印输出 print 1, 2 我的输入2: values = ['1'] 预期打印输出 print 1 print 1,2,3 我的输入3: values = ['1','2','3'] 预期打印输出 print 1 print 1,2,3 以下是我尝试过的: for x in values: print x 简单地说: print(','.join(myL

我的输入1:

 values = ['1','2']
预期打印输出

   print 1, 2
我的输入2:

  values = ['1']
预期打印输出

   print 1
    print 1,2,3
我的输入3:

  values = ['1','2','3']
预期打印输出

   print 1
    print 1,2,3
以下是我尝试过的:

  for x in values:
      print x  
简单地说:

print(','.join(myList))
简单地说:

print(','.join(myList))
只需调用传入列表,如果它只是一个元素,则不会添加“逗号”:

输出:

1
1,2
1,2,3

输出:

1
1,2
1,2,3

输出:

1
1,2
1,2,3
如果您有一个整数列表,或者字符串和整数的混合,那么您必须对列表中的整数部分调用
str
。但是,执行此操作的最简单方法是调用列表(map将对列表中的每个项目应用可调用项)以转换为相应的
str
,或者执行生成器理解以转换为int:

理解:

print(",".join(str(i) for i in [1,2,3])) 
地图:

只需调用传入列表,如果它只是一个元素,则不会添加“逗号”:

输出:

1
1,2
1,2,3

输出:

1
1,2
1,2,3

输出:

1
1,2
1,2,3
如果您有一个整数列表,或者字符串和整数的混合,那么您必须对列表中的整数部分调用
str
。但是,执行此操作的最简单方法是调用列表(map将对列表中的每个项目应用可调用项)以转换为相应的
str
,或者执行生成器理解以转换为int:

理解:

print(",".join(str(i) for i in [1,2,3])) 
地图:


您在命令中键入的打印内容与输出的内容不完全相同。基本上,print命令中的逗号只是将您要求它打印的每个项目分开,而不是告诉它自己打印逗号。i、 e

>>> print 1, 2, 3
1 2 3 
关键是创建文本或字符串的外观,然后打印出来

>>> text = ','.join(str(x) for x in [1, 2, 3])
>>> print text
1,2,3

您在命令中键入的打印内容与输出的内容不完全相同。基本上,print命令中的逗号只是将您要求它打印的每个项目分开,而不是告诉它自己打印逗号。i、 e

>>> print 1, 2, 3
1 2 3 
关键是创建文本或字符串的外观,然后打印出来

>>> text = ','.join(str(x) for x in [1, 2, 3])
>>> print text
1,2,3

您可以将列表转换为字符串您可以将列表转换为字符串您需要使用逗号和空格来获得输出,因为您当前有它想要指出这一点。实际上,代码很好,需要更改的是我的输出,以指示代码实际输出的内容。现在它与OP期望值匹配。如果列表中包含整数,则join可能无法正常工作?@Bittu Yes这是正确的。我更新了答案以反映这个细节。您需要使用逗号和空格来获得输出,因为您当前有它感谢您指出这一点。实际上,代码很好,需要更改的是我的输出,以指示代码实际输出的内容。现在它与OP期望值匹配。如果列表中包含整数,则join可能无法正常工作?@Bittu Yes这是正确的。我更新了答案以反映这一细节。