Python:如何向长列表添加单引号

问题描述 投票:0回答:4

我想知道向手动创建的 Python 列表中的每个元素添加单引号的最快方法。

手动生成列表时,我通常首先创建一个变量(例如 my_list),将其分配给列表括号,然后用单引号括起来的元素填充列表:

my_list = []

my_list = [ '1','baz','ctrl','4' ]

但是,我想知道是否有更快的方法来制作列表。问题是,我通常写完列表,然后进去给列表中的每个元素添加单引号。我认为这涉及太多的击键。

Jupyter NB 上的一个快速但无效的解决方案是突出显示列表元素并按键盘上的单引号。但是,如果您有一个想要转换为字符串的单词列表,则此方法不起作用; Python 认为您正在调用变量(例如 my_list = [1, baz, ctrl, 4 ])并抛出 NameError 消息。在此示例中,列表元素 baz 将抛出:

NameError: name 'baz' is not defined

我在SO上尝试了这个问题,但只有当你的列表已经包含字符串时它才有效:在python中加入字符串列表并将每个字符串用引号括起来。这个问题还假设您只使用数字:How to conversion list into string with quote in python.

我目前没有从事特定项目。这个问题只是出于教育目的。感谢大家的输入/快捷键。

python string list quotes nameerror
4个回答
6
投票

是的,但是为什么不呢:

>>> s = 'a,b,cd,efg'
>>> s.split(',')
['a', 'b', 'cd', 'efg']
>>> 

然后复制然后粘贴进去

或者来自@vash_the_stampede的想法:

>>> s = 'a b cd efg'
>>> s.split()
['a', 'b', 'cd', 'efg']
>>>

2
投票

我发现的最好方法是:

>>> f = [10, 20, 30]

>>> new_f = [f'{str(i)}' for i in f]

>>> print(new_f)

['10', '20', '30']

0
投票

您可以将输入作为字符串并将其拆分为列表 例如。

eg="This is python program"
print(eg)
eg=eg.split()
print(eg)

这将给出输出

这是Python程序

['这个', '是', 'python', '程序']

希望这有帮助


0
投票

已经有一段时间了,但我想我已经找到了遵循@U10-Forward 想法的快速方法:

>>> list = ('A B C D E F G Hola Hello').split()
>>> print(list)

['A', 'B', 'C', 'D', 'E', 'F', 'G', 'Hola', 'Hello']
© www.soinside.com 2019 - 2024. All rights reserved.