Python一些函数的笔记

以下是我在一个网址上看到的,自己就在这总结了一下,算是在学习过程中的笔记吧!

enumerate(list)

迭代列表时,应该同时迭代其中的元素及其索引。

mylist = ["It's","only","a","model"]
for index,item in enumerate(mylist):
    print(index,item)

输出:

(0, "It's")
(1, 'only')
(2, 'a')
(3, 'model')

链式比较操作符

在许多语言中,4>3>2的结果是False,因为4>3的结果是布尔值,而True>2将会得出False。

mynumber = 3
if 4 > mynumber > 2:
    print("i am won!\n" * 3)
输出结果:

i am won!
i am won!
i am won!

collections.Counter

在计算需要集合中元素的个数是,可以用collections.deque

from collections import Counter
from random import randrange
import pprint
mycounter = Counter()

for i in range(100):
    random_number = randrange(10)
    mycounter[random_number]+= 1
for i in range(10):
    print(i,mycounter[i])
输出结果是:

(0, 14)
(1, 13)
(2, 7)
(3, 10)
(4, 11)
(5, 6)
(6, 10)
(7, 13)
(8, 8)
(9, 8)

字典推导

Python开发者的一个重要标志就是理解列表推导,但是字典推导同样也是非常重要的。

my_phrase = ["No","one","expects","the","Spanish","Inquisition"]
my_dict={key:value for value,key in enumerate(my_phrase)}
print(my_dict)
reversed_dict = {value:key for key,value in my_dict.items()}
print(reversed_dict)
输出结果为:

{'Inquisition': 5, 'No': 0, 'expects': 2, 'one': 1, 'Spanish': 4, 'the': 3}
{0: 'No', 1: 'one', 2: 'expects', 3: 'the', 4: 'Spanish', 5: 'Inquisition'}

用subprocess执行shell命令

import subprocess
output=subprocess.check_output("dir",shell=True)
print(output)
用os库的话:

import os
os.system("dir")
如果想要保存到变量中可以用popen

import os
output=os.popen("dir")
print output.read()
字典的.get()和.iteritems()方法

字典的get()方法可以设置默认值,当用get()查找的键不存在时,返回方法中的默认值参数是很有用的。与列表中的enumerate()相同,可以用键值元组迭代字典中的元素。

my_dict = {'name':'lancelot','quest':'Holy Grail','favourite_color':'blue'}
print(my_dict.get("airspeed velocity of an unladen swallow","African or European?\n"))
for key, value in my_dict.iteritems():
    print(key, value)
输出结果:

African or European?


('quest', 'Holy Grail')
('name', 'lancelot')
('favourite_color', 'blue')

如果要用for迭代输出字典,就要用到字典的iteritems()方法,这个方法在Python3.x中已废除,取代的是items()方法,items()方法在Python2.x中也存在着。



 







  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值