我是python的新手,并且本质上试图弄清楚复制此功能的语法:strings = ["foo", "bar", "apple"]
与strings = [foo, bar, apple]
类似,这样我就不必在所有条目周围加上引号。谢谢!
答案 0 :(得分:6)
strings = "foo bar apple".split()
答案 1 :(得分:2)
strings = r"foo, bar, apple".split(", ")
答案 2 :(得分:1)
您可以将所有字符串放在文本文件中,每行一个字符串。然后是strings = list(open("datafile", "r"))
。
答案 3 :(得分:1)
我想说创建一个字符串列表并不比你现在做的更简单。
正如其他答案所指出的那样,有很多方法可以将所有字符串放在一个大字符串或文件中,然后拆分它们,但在我看来,输入比引号更难,特别是如果你有一个像样的IDE自动关闭字符串引号。此外,您已经使用的语法是读取您的代码的任何其他人所期望的;使用其他东西只会增加不必要的混乱,几乎为零增益。
答案 4 :(得分:1)
您发布的内容有两个主要区别:
引号“”和“'表示它是一个字符串,就像[1,2,3]是一个整数列表一样。如果删除引号,则实际上是在创建python对象列表。 python对象基本上是所有python类的基础,例如整数和字符串是python对象是它们最基本的层次。
您可以执行以下操作:
foo = "foo"
bar = "bar"
apple = "apple"
strings = [foo,bar,apple]
答案 5 :(得分:0)
如果你有很多要编写的元素,你可以使用一个程序来做这件事(来自开发人员的这个令人难以置信的想法!),然后你复制粘贴结果:
li = []
ch = ("You have entered an empty string ''\n"
'Type ENTER alone if you want to stop.\n'
'Type anything if you want to record the empty string : ')
while True:
e = raw_input('enter : ')
if e=='':
x = raw_input(ch)
if x=='': break
li.append(e)
print
print li
示例:
enter : 123
enter : ocean
enter : flower
enter :
You have entered an empty string ''
Type ENTER alone if you want to stop.
Type anything if you want to record the empty string : k
enter : once upon a time
enter : 14 * 4
enter :
You have entered an empty string ''
Type ENTER alone if you want to stop.
Type anything if you want to record the empty string :
['123', 'ocean', 'flower', '', 'once upon a time', '14 * 4']
您没有打字但只有副本是:
['123', 'ocean', 'flower', '', 'once upon a time', '14 * 4']