我有一个Python列表,例如
names = ["Sam", "Peter", "James", "Julian", "Ann"]
Run Code Online (Sandbox Code Playgroud)
我想在没有正常"[]的单行中打印数组
names = ["Sam", "Peter", "James", "Julian", "Ann"]
print (names)
Run Code Online (Sandbox Code Playgroud)
将输出作为;
["Sam", "Peter", "James", "Julian", "Ann"]
Run Code Online (Sandbox Code Playgroud)
这不是我想要的格式,而是我希望它像这样;
Sam, Peter, James, Julian, Ann
Run Code Online (Sandbox Code Playgroud)
注意:它必须在一行中.
Fat*_*ror 206
print(', '.join(names))
Run Code Online (Sandbox Code Playgroud)
这听起来像只需要列表中的所有元素并将它们连接起来', '.
小智 63
这是一个简单的.
names = ["Sam", "Peter", "James", "Julian", "Ann"]
print(*names, sep=", ")
Run Code Online (Sandbox Code Playgroud)
星形解包列表并返回列表中的每个元素.
Ste*_*ett 37
一般解决方案,适用于非字符串数组:
>>> print str(names)[1:-1]
'Sam', 'Peter', 'James', 'Julian', 'Ann'
Run Code Online (Sandbox Code Playgroud)
kri*_*sad 21
如果输入数组是Integer类型,那么您需要先将数组转换为字符串类型数组,然后使用join方法连接,或空格您想要的任何内容.例如:
>>> arr = [1, 2, 4, 3]
>>> print(", " . join(arr))
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: sequence item 0: expected string, int found
>>> sarr = [str(a) for a in arr]
>>> print(", " . join(sarr))
1, 2, 4, 3
>>>
Run Code Online (Sandbox Code Playgroud)
直接使用将连接整数和字符串的连接将抛出错误,如上所示.
lye*_*rox 16
有两个答案,第一个是使用'sep'设置
>>> print(*names, sep = ', ')
Run Code Online (Sandbox Code Playgroud)
另一个在下面
>>> print(', '.join(names))
Run Code Online (Sandbox Code Playgroud)
','.join(list)仅当列表中的所有项目均为字符串时才有效。如果您希望将数字列表转换为逗号分隔的字符串。例如a = [1, 2, 3, 4]进入,'1,2,3,4'则可以
str(a)[1:-1] # '1, 2, 3, 4'
Run Code Online (Sandbox Code Playgroud)
要么
str(a).lstrip('[').rstrip(']') # '1, 2, 3, 4'
Run Code Online (Sandbox Code Playgroud)
尽管这不会删除任何嵌套列表。
将其转换回列表
a = '1,2,3,4'
import ast
ast.literal_eval('['+a+']')
#[1, 2, 3, 4]
Run Code Online (Sandbox Code Playgroud)
小智 6
对于整数类型的数组,我们需要先将其更改为字符串类型,然后使用 join 函数来获得不带括号的干净输出。
arr = [1, 2, 3, 4, 5]
print(', '.join(map(str, arr)))
Run Code Online (Sandbox Code Playgroud)
输出 - 1、2、3、4、5
对于字符串类型的数组,我们需要直接使用 join 函数来获得不带括号的干净输出。
arr = ["Ram", "Mohan", "Shyam", "Dilip", "Sohan"]
print(', '.join(arr)
Run Code Online (Sandbox Code Playgroud)
输出 - Ram、Mohan、Shyam、Dilip、Sohan
尝试在带有打印语句的列表名称之前使用星号:
names = ["Sam", "Peter", "James", "Julian", "Ann"]
print(*names)
Run Code Online (Sandbox Code Playgroud)
输出:
Sam Peter James Julian Ann
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
436806 次 |
| 最近记录: |