python实现在无须过多援引的情况下创建字典的方法

yipeiwu_com7年前Python基础

本文实例讲述了python实现在无须过多援引的情况下创建字典的方法。分享给大家供大家参考。具体实现方法如下:

1.使用itertools模块

import itertools
the_key = ['ab','22',33]
the_vale = ['aaaa',"dddddddd",'22222222222']
d = dict(itertools.izip(the_key,the_vale))
print d

2.加参数

dict = dict(red = 1,bule = 2,yellow = 3)
print dict

结果为:{'yellow': 3, 'bule': 2, 'red': 1}

3.使用内置的zip函数
zip([iterable,...])返回一个列表,

the_key = ['ab','22',33]
the_vale = ['aaaa',"dddddddd",'22222222222']
dict2 = dict(zip(the_key,the_vale))
print type(zip(the_key,the_vale))
print dict2

结果:

<type 'list'>
{33: '22222222222', 'ab': 'aaaa', '22': 'dddddddd'}

4.dict的fromkeys函数
创建的每个键有相同的value

fromkeys(seq[,value])
Create a new dictionary with keys from seq and values set to value.

the_key = ['ab','22',33]
the_vale = 0
d = dict.fromkeys(the_key,the_vale)
print 

结果:{33: 0, 'ab': 0, '22': 0}

import string
count_by_letter = dict.fromkeys(string.ascii_lowercase,0)
print count_by_letter

结果:

{'a': 0, 'c': 0, 'b': 0, 'e': 0, 'd': 0, 'g': 0, 'f': 0, 'i': 0, 'h': 0, 'k': 0, 'j': 0, 'm': 0, 'l': 0, 'o': 0, 'n': 0, 'q': 0, 'p': 0, 's': 0, 'r': 0, 'u': 0, 't': 0, 'w': 0, 'v': 0, 'y': 0, 'x': 0, 'z': 0}

希望本文所述对大家Python程序设计的学习有所帮助。

相关文章

python主线程捕获子线程的方法

最近,在做一个项目时遇到的了一个问题,主线程无法捕获子线程中抛出的异常。 先看一个线程类的定义 ''''' Created on Oct 27, 2015 @author:...

基于python socketserver框架全面解析

基于python socketserver框架全面解析

socketserver框架是一个基本的socket服务器端框架, 使用了threading来处理多个客户端的连接, 使用seletor模块来处理高并发访问, 是值得一看的python...

Python判断对象是否为文件对象(file object)的三种方法示例

文件操作是开发中经常遇到的场景,那么如何判断一个对象是文件对象呢?下面我们总结了3种常见的方法。 方法1:比较类型 第一种方法,就是判断对象的type是否为file >>...

Pytorch DataLoader 变长数据处理方式

关于Pytorch中怎么自定义Dataset数据集类、怎样使用DataLoader迭代加载数据,这篇官方文档已经说得很清楚了,这里就不在赘述。 现在的问题:有的时候,特别对于NLP任务...

Python求两点之间的直线距离(2种实现方法)

方法一: #导入math包 import math #定义点的函数 class Point: def __init__(self,x=0,y=0): self.x=x...