博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python基础总结(4)
阅读量:4592 次
发布时间:2019-06-09

本文共 1743 字,大约阅读时间需要 5 分钟。

一、函数的定义。

def fun(x):

    return x
def passtest(y):
    pass # pass保证此处不写代码也能正确运行文件,if后面同样可以使用,此时这个是空函数
def go():
    return 10,20 #返回两个值,其实就是返回一个元组。还是一个值
print(fun(10))
print(passtest(10)) #结果为None
print(go())

二、函数的参数。

def calc(*number): #参数数目可变     print(number) def calc1(one,two,**three) : #参数可变数目,两个星号既是dict     print('one :', one , 'two :' , two ,"three :", three ) #加号不适用 calc1('1 ','2',city='beijing',name='xiaoming') #调用关键字参数 def test1(one, two, *, three, four,**key) :#命名关键字,后面两个没有默认,必须要写。这样就是规定必须要写的键值对     print("成功调用"); test1(1,2,three='aa',four='bb')#调用的时候,key的对应可以不写。 #递归函数的调用 def fact(n):     if n == 1 :         return 1;     else:         return n+fact(n-1) print(fact(5))
三、      python的高级特性。
1,切片。
对于一个list,我们要寻找他之中的几个数,需要用循环来实现,但是这样写十分繁琐,于是我们有更好的办法,如下,
L = ['a','b','c','d','e','f','g'] print(L[1:4]) #切出1到4输出。 print(L[:3]) #前3个 print(L[-3:]) #后3个 print(L[::3]) #所有的每3个输出一个 print(L[:6:2]) #前6个每2个输出一个
2,列表的生成,平时创建部分列表比较繁琐,可以简化该代码。
L = ['a','b','c','d','e','f','g'] print(L[1:4]) #切出1到4输出。 print(L[:3]) #前3个 print(L[-3:]) #后3个 print(L[::3]) #所有的每3个输出一个 print(L[:6:2]) #前6个每2个输出一个 l = range(10) #生成10以内的列表 l = [x*y for x in range(10) for y in range(10) if x % 2 ==0 ] #通过循环生成列表 l = L[::2] #通过切片生成列表
3,生成器。
     列表元素可以按照某种算法推算出来,那我们是否可以在循环的过程中不断推算出后续的元素呢?这样就不必创建完整的list,从而节省大量的空间。在Python中,这种一边循环一边计算的机制,称为生成器:generator。
g = (x for x in range(20) if x % 2 == 0) #改成括号就变成了生成器 for i in range(4):  #迭代4个值     print(next(g)) def fib(max):     n,a,b=0,0,1 #赋值     while n < max:         yield b #每次生成器返回的结果         a,b = b,a+b         n = n + 1 a = fib(20) # 这里得到一个生成器 for i in range(4):     print(next(a)) #读取生成器之中的值
4,最后再记住一句话吧!
    凡是可作用于for循环的对象都是Iterable类型;凡是可作用于next()函数的对象都是Iterator类型。

转载于:https://www.cnblogs.com/luohuayu/p/8846002.html

你可能感兴趣的文章
pyc文件的本质
查看>>
洛谷 - P2602 - 数字计数 - 数位dp
查看>>
android 环境配置 与 运行错误
查看>>
POJ 2653
查看>>
余承东:未来5年中国大部分智能手机厂商消失
查看>>
Android中个人推崇的数据库使用方式
查看>>
关于H.264 x264 h264 AVC1
查看>>
北戴河之旅
查看>>
search for a range(找出一个数在数组中开始和结束位置)
查看>>
一次Mutex死锁的原因探究
查看>>
Notepad++ - 通过语言格式设置自定义语法高亮颜色
查看>>
日记(16)-20140928
查看>>
IIS的应用程序池优化方法
查看>>
HTML5 虚拟键盘出现挡住输入框的解决办法
查看>>
绿色astah简体中文版6.8
查看>>
(三)Installation
查看>>
函数_命名空间和作用域
查看>>
bash正则
查看>>
centos下设置nodejs开机启动
查看>>
Echarts Binning on map 根据真实经纬度渲染数据
查看>>