Python: как добавить одинарные кавычки в длинный список - PullRequest
0 голосов
/ 05 сентября 2018

Я хочу знать самый быстрый способ добавления одинарных кавычек к каждому элементу в списке 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 и заключите каждую строку в кавычки . Этот вопрос также предполагает, что вы работаете только с числами: Как преобразовать список в строку с кавычками в python .

В данный момент я не работаю над конкретным проектом. Этот вопрос только для образовательных целей. Спасибо всем за ваш ввод / ярлыки.

Ответы [ 2 ]

0 голосов
/ 05 сентября 2018

Вы можете взять ввод как строку и разбить ее на список Например,

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

Это даст вывод

Это программа на Python

['This', 'is', 'python', 'program']

Надеюсь, это поможет

0 голосов
/ 05 сентября 2018

Да, но почему бы и нет:

>>> 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']
>>>
...