有没有办法通过输入提示创建Python列表?
我正在创建一个Python邮件列表,但在函数的最后遇到了问题。
问题是,列表应该是这样的:
['first@google.com', 'second@google.com', 'third@google.com']
我现在的代码是:
mailinputs = raw_input('Enter all mails with comma: ')
receivers = [mailinputs]
如果你输入:
'first@google.com', 'second@google.com', 'third@google.com'
就会出现这样的错误:
Probe failed: Illegal envelope To: address (invalid domain name):
另外,如果你输入:
first@google.com, second@google.com, third@google.com
只有first@google.com收到了邮件。
我该怎么办?
1 个回答
7
raw_input()
返回的是一个字符串。你需要把这个字符串按照逗号分开,这样就能得到一个列表:
>>> 'first@google.com,second@google.com,third@google.com'.split(',')
['first@google.com', 'second@google.com', 'third@google.com']
所以在你的例子中:
mailinputs = raw_input('Enter all mails with comma: ')
receivers = mailinputs.split(',')
你还可以再做一步,去掉每个邮箱前后的空格:
mailinputs = raw_input('Enter all mails with comma: ')
receivers = [x.strip() for x in mailinputs.split(',')]