Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何将多列表数据集中的每个元素分配给变量?_Python - Fatal编程技术网

Python 如何将多列表数据集中的每个元素分配给变量?

Python 如何将多列表数据集中的每个元素分配给变量?,python,Python,在下面的列表中,我试图在db中插入每个姓名和电话号码。所以我尝试迭代并将其分配给一个变量,并在insert语句中使用它 contactlist = [ ['Siemens, Harper', '323-4149'], ['Smith, Patti', '239-1212'], ['Jackson, Janet', '313-1352'], ['Manfredi, Ralph','872-2221'], ['Thompson, Bobby', '365-2622']

在下面的列表中,我试图在db中插入每个姓名和电话号码。所以我尝试迭代并将其分配给一个变量,并在insert语句中使用它

contactlist = [
  ['Siemens, Harper',  '323-4149'],
  ['Smith, Patti',  '239-1212'],
  ['Jackson, Janet',   '313-1352'],
  ['Manfredi, Ralph','872-2221'],
  ['Thompson, Bobby',   '365-2622'],
  ['James, Lebron',  '457-6223'],
  ['Ziegler, Zig',   '667-1101'],
  ['Robbins, Tony', '329-2310']
]
这就是我一直在尝试的:

a = []
for data in contactlist:
    #print (data)
    print (data[0])
    for d1 in data:
        #print (d1)
        a.append(d1)
print (a)
您可以使用
functools

from functools import reduce    
reduce(lambda m,n: m+n,contanctlist)
在代码中

>>> contactlist = [
...   ['Siemens, Harper',  '323-4149'],
...   ['Smith, Patti',  '239-1212'],
...   ['Jackson, Janet',   '313-1352'],
...   ['Manfredi, Ralph','872-2221'],
...   ['Thompson, Bobby',   '365-2622'],
...   ['James, Lebron',  '457-6223'],
...   ['Ziegler, Zig',   '667-1101'],
...   ['Robbins, Tony', '329-2310']
... ]
>>> a = reduce(lambda m,n: m+n,contactlist)
>>> a
['Siemens, Harper', '323-4149', 'Smith, Patti', '239-1212', 'Jackson, Janet', '313-1352', 'Manfredi, Ralph', '872-2221', 'Thompson, Bobby', '365-2622', 'James, Lebron', '457-6223', 'Ziegler, Zig', '667-1101', 'Robbins, Tony', '329-2310']
根据瓦伦的评论

contactlist = [
  ['Siemens, Harper',  '323-4149'],
  ['Smith, Patti',  '239-1212'],
  ['Jackson, Janet',   '313-1352'],
  ['Manfredi, Ralph','872-2221'],
  ['Thompson, Bobby',   '365-2622'],
  ['James, Lebron',  '457-6223'],
  ['Ziegler, Zig',   '667-1101'],
  ['Robbins, Tony', '329-2310']
 ]

phone_list = []
person  = []

for contact in contactlist:
    phone_list.append(contact[1])
    person.append(contact[0])

print phone_list
print person   

据我所知,你打错电话了。您的
联系人列表是一个列表列表。因此,您可以像以前那样访问每个条目。如果您需要数字,请按如下方式输入该数据的第二个条目:

联系人列表中数据的
:
名称=数据[0]
数字=数据[1]
打印“名称:%s,编号%s%”(名称,编号)
不用打印条目,您可以对变量执行任何需要的操作,将它们添加到数据库中。

看看这个:,一种方法是创建一个插入命令中的字符串

contactlist = [
  ['Siemens, Harper',  '323-4149'],
  ['Smith, Patti',  '239-1212'],
  ['Jackson, Janet',   '313-1352'],
  ['Manfredi, Ralph','872-2221'],
  ['Thompson, Bobby',   '365-2622'],
  ['James, Lebron',  '457-6223'],
  ['Ziegler, Zig',   '667-1101'],
  ['Robbins, Tony', '329-2310']
]

str([tuple(i) for i in contactlist])[1:-1]
印刷品

"('Siemens, Harper', '323-4149'), ('Smith, Patti', '239-1212'), ('Jackson, Janet', '313-1352'), ('Manfredi, Ralph', '872-2221'), ('Thompson, Bobby', '365-2622'), ('James, Lebron', '457-6223'), ('Ziegler, Zig', '667-1101'), ('Robbins, Tony', '329-2310')"
但是看看Python文档,这是不必要的。考虑这个 完整示例:():

数据库现在包含一个名为employees的表,其中包含以下行:

('Siemens, Harper', '323-4149')
('Smith, Patti', '239-1212')
('Jackson, Janet', '313-1352')
('Manfredi, Ralph', '872-2221')
('Thompson, Bobby', '365-2622')
('James, Lebron', '457-6223')
('Ziegler, Zig', '667-1101')
('Robbins, Tony', '329-2310')

只是一个建议,但在你对Kallz帖子的评论中,你说“我在上面发布的代码中也得到了相同的输出,但我的问题是我想提取个人姓名和电话号码”

为此,您可能需要使用字典

Contacts={}
Contacts['Barry']="184788174"
Contacts['Stewart']="1515174"
Contacts['Sarah']="1252358174"

print(Contacts['Barry'])
返回:

184788174
Barry :
184788174 

Stewart :
1515174 

Sarah :
1252358174
或显示所有:

Contacts={}
Contacts['Barry']="184788174"
Contacts['Stewart']="1515174"
Contacts['Sarah']="1252358174"


for data in Contacts:
    print(data, ":")
    print(Contacts[data], """
""")
返回:

184788174
Barry :
184788174 

Stewart :
1515174 

Sarah :
1252358174

您所指的
db
可能重复?我在上面发布的代码中也得到了相同的输出,但我的问题是我想提取个人姓名和电话号码numbers@Varun你想要两张名单一张是人名,另一张是电话号码谢谢:)@kallzYup这正是我要找的。谢谢:))