码迷,mamicode.com
首页 > 编程语言 > 详细

python 4

时间:2018-05-20 21:22:41      阅读:176      评论:0      收藏:0      [点我收藏+]

标签:val   直接   对象   value   列表生成式   可变   range   需要   The   

1.
python定义函数时,可以把某些变量定义为常亮,这样就可以减少重复输入的部分
比如说,输入所有一年级学生的姓名和年龄,年龄可以直接定义为6,从而只需要输入姓名就可以了, 并且如果有的与默认参数不符合,也可以直接覆盖但是得按顺序,不然必须写明变量是哪个



2.默认参数必须指向不变对象!



3.可变参数
例如我们要来计算下1-5的值
def calc(members):
    sum=0;
    for x in members:
        sum=sum+x;
    print sum
calc([1,2,3,4,5])或者calc((1,2,3,4,5))(members传入了一个list或者tuple)

但是当我们把members变为*members是,members就变成了一个可变参数,函数调用,变成了,calc(1,2,3,4,5)


4.当我们*members的时候,list或者tuple就不能作为参数了,此时把list前边也加*就可以了




5.def person(name, age, **kw):
    print ‘name:‘, name, ‘age:‘, age, ‘other:‘, kw


kw为任意的   dict字典
def person(name, age, **kw):
    print ‘name:‘, name, ‘age:‘, age, ‘other:‘, kw
d={‘a‘:1,‘b‘:2,‘c‘:3}
person(‘haha‘,50,**d)
(注意:d要加**)


6.参数定义顺序必须是:必选参数,默认参数,可变参数,关键字参数
def func(a,b,c=0,*args,**kw):


7.切片   l[m:n]
从下标m到n-1。个数为n-m个


8.range(1,10)
输出:1,2,3,4,5,6,7,8,9,10



9.列表生成式子
print [x*x for x in range(10) if not (x*x)%2==0]
[x+y for x in range(10) for y in range(10)]
生成的元素放在前边,if语句后边



10.
d = {‘a‘: 1, ‘b‘: 2, ‘c‘: 3}
for key in d:
    print key
输出
a
b
c

默认情况下,dict迭代key,如果想迭代value

for value in d.itervalues():


如果两个都要迭代
for k, v in d.iteritems()
    print k,v

python 4

标签:val   直接   对象   value   列表生成式   可变   range   需要   The   

原文地址:https://www.cnblogs.com/zaqzzz/p/9064491.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!