学习Python的好网站:
http://www.runoob.com/python/python-tutorial.html
1.enumerate函数
用于遍历序列中的元素,以及元素的下标,诸如:
enumerate 函数用于遍历序列中的元素以及它们的下标:
2.random.random()
该函数是生成0和1之间的随机浮点数float,它其实是一个隐藏的random.Random类的实例的random方法。即直接用random.random()时,其实有一个隐藏生成的random.Random类的实例,也就是random.Random()。random.random()和random.Random().random()作用是一样的。
3.setdefault()
Python 字典(Dictionary) setdefault() 函数和get()方法类似, 如果键不已经存在于字典中,将会添加键并将值设为默认值。
setdefault()方法语法:dict.setdefault(key, default=None)
key – 查找的键值。
default – 键不存在时,设置的默认键值。
例如:
#!/usr/bin/python
dict = {'Name': 'Zara', 'Age': 7}
print "Value : %s" % dict.setdefault('Age', None)
print "Value : %s" % dict.setdefault('Sex', None)
输出:
Value : 7
Value : None
4.Python字典访问的三种方法
定义字典 dic = {‘a’:”hello”,’b’:”how”,’c’:”you”}
(1)方法一
for key in dic:
print key,dic[key]
print key + str(dic[key])
结果:
a hello
ahello
c you
cyou
b how
bhow
细节:
print key,dic[key],后面有个逗号,自动生成一个空格
print key + str(dic[key]),连接两个字符串,用的是加号,直接输出,中间不加逗号
(2)方法二
for (k,v) in dic.items():
print "dic[%s]="%k,v
结果:
dic[a]= hello
dic[c]= you
dic[b]= how
(3)方法三
for k,v in dic.iteritems():
print "dic[%s]="%k,v
结果:
dic[a]= hello
dic[c]= you
dic[b]= how
对比:
items()返回的是列表对象,而iteritems()返回的是iterator对象。例如:
print dic.items() #[(‘a’, ‘hello’), (‘c’, ‘you’), (‘b’, ‘how’)]
print dic.iteritems() #
深究:iteritor是迭代器的意思,一次反悔一个数据项,知道没有为止
for i in dic.iteritems():
print i
结果:('a', 'hello')
('c', 'you')
('b', 'how')
5.Python多键值的问题
(1)python字典多键值及重复键值的使用
http://blog.csdn.net/a1368783069/article/details/46891685
多键值对的打印方法:
Python中,现定义字典如下:
dict = {(‘user1’,’movie1’):’1’,(‘user2’,’movie2’):’2’,(‘user3’,’movie3’):’3’,(‘user4’,’movie4’):’4’…..}
请问如何写for循环,输出键值,和对应的值,期待格式如下:
user1,movie1,dict[user1][movie1]=1;
user2,movie2,dict[user2][movie2]=2;
user3,movie3,dict[user3][movie3]=3
for key,val in dict.items():
print key[0],key[1],"dict[",key[0],"][",key[1],"]=",val
(2)python 判断多个键值是否都在一个字典里的方法:
方法一:
set( [ key1 ,key2 ] ).intersection( dict )
方法二:
def has_keys(dic, *keys):
for k in keys:
if k not in dic.keys():
return False
return True
方法三:
has_keys(dict,key1,key2,key3,key4)
6.python 集合类型的操作
http://blog.csdn.net/business122/article/details/7541486
7.python字典的用法举例
http://blog.csdn.net/ieearth/article/details/45555577
8.python中sort函数和sorted函数的区别
sort()与sorted()的不同在于,sort是在原位重新排列列表,而sorted()是产生一个新的列表。
我们需要对List进行排序,Python提供了两个方法
对给定的List L进行排序,
方法1.用List的成员函数sort进行排序,sort函数原型:
sort(cmp=None, key=None, reverse=False)
方法2.用built-in函数sorted进行排序,sorted函数原型: sorted(iterable, cmp=None, key=None, reverse=False)
iterable:是可迭代类型;
cmp:用于比较的函数,比较什么由key决定,有默认值,迭代集合中的一项;
key:用列表元素的某个属性和函数进行作为关键字,有默认值,迭代集合中的一项;
reverse:排序规则. reverse = True 或者 reverse = False,有默认值。
返回值:是一个经过排序的可迭代类型,与iterable一样。
注:通常,cmp和key可以使用lambda表达式。
9.Python 字典(Dictionary) get()方法
Python 字典(Dictionary) get() 函数返回指定键的值,如果值不在字典中返回默认值。语法
get()方法语法:dict.get(key, default=None)
参数:key – 字典中要查找的键。default – 如果指定键的值不存在时,返回该默认值值。
返回值:返回指定键的值,如果值不在字典中返回默认值None。
#!/usr/bin/python
dict = {'Name': 'Zara', 'Age': 27}
print "Value : %s" % dict.get('Age')
print "Value : %s" % dict.get('Sex', "Never")
以上实例输出结果为:
Value : 27
Value : Never