python创建字典

books = [['Python程序设计',10001,'ni邮电出版社'],
['5G移动通信技术',10008,'nj邮电出版社'],
['通信原理',20009,'ni工业出版社']]
keys = ('书名','ISBN','出版社')
用上面两个数据,用代码生成book_dic

book_dic = {10001:{'书名':'Python程序设计','ISBN':10001,'出版社':'ni邮电出版社'}, \

10008:{'书名': '5G移动通信技术', 'ISBN': 10008, '出版社': 'nj邮电出版社'}, \

20009:{'书名': '通信原理', 'ISBN': 20009, '出版社': 'ni工业出版社'}}

img

不太理解循环怎么处理

可以使用两个for循环来遍历每本书籍的每一条信息,第一个for循环从0到遍历所有书籍信息的列表的长度,以便访每本书籍的信息,第二个for循环来遍历每本书籍的每一条信息,遍历从0到当前书籍列表的长度来实现遍历。代码如下:

参考链接:
Python基础教程:括号()[]{}详解 - python学习者0 - 博客园
python字典中添加键值对的方法 - 编程语言 - 亿速云
python字典中如何添加键值对-木庄网络博客

books = [['Python程序设计',10001,'ni邮电出版社'],
['5G移动通信技术',10008,'nj邮电出版社'],
['通信原理',20009,'ni工业出版社']]
keys = ('书名','ISBN','出版社')

#https://www.cnblogs.com/xxpythonxx/p/14781611.html
book_dic={} #存放结果的字典
lengthb = len(books)  #获取存储3本书籍的列表boos的长度
for j in range (0,lengthb) :  #遍历books列表的3本书籍
    
    book = books[j]   #获取当前书籍的信息
    length = len(book)  #获取当前书籍列表的长度
    #print("length=",length)
    message = {}  #存储每本书籍字典的变量
    
    for i in range (0,length): #遍历当前书籍的每一条信息
    #https://www.yisu.com/zixun/322897.html    
    #https://www.muzhuangnet.com/show/13809.html    
        message[keys[i]] = book[i]  #把当前书籍当前位置的信息存入字典message
        #print("i=",i,"message=",message)
        
    book_dic[book[1]] = message #把每本书籍的字典信息存入最终结果的字典
    #print("book_dic=",book_dic)

#打印结果
print( book_dic)   


运行结果:

img

就是遍历列表,将列表的每个元素和key配对生成小字典,同时把元素里的ISBN编号一起生成大字典

books = [['Python程序设计',10001,'ni邮电出版社'],
['5G移动通信技术',10008,'nj邮电出版社'],
['通信原理',20009,'ni工业出版社']]
keys = ('书名','ISBN','出版社')
item = {}
for book in books:
    item[book[1]] = {
        "书名": book[0],
        "ISBN": book[1],
        "出版社": book[2]
    }
print(item)