我想知道在手动创建的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上尝试了此问题,但仅当您的列表已包含字符串Join a list of strings in python and wrap each string in quotation marks时,此方法才有效。这个问题还假设您仅使用数字:How to convert list into string with quotes in python。
我目前不在从事特定项目。这个问题仅出于教育目的。谢谢大家的输入/快捷键。
答案 0 :(得分:2)
是的,但是为什么不呢?
>>> 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']
>>>
答案 1 :(得分:0)
您可以将输入作为字符串并将其拆分为列表 例如。
eg="This is python program"
print(eg)
eg=eg.split()
print(eg)
这将给出输出
这是python程序
['This','is','python','program']
希望这会有所帮助
答案 2 :(得分:0)
我发现的最好方法是:
>>> f = [10, 20, 30]
>>> new_f = [f'{str(i)}' for i in x]
>>> print(new_f)
['10', '20', '30']
答案 3 :(得分: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']