首页
Web开发
Windows程序
编程语言
数据库
移动开发
系统相关
微信
其他好文
会员
首页
>
编程语言
> 详细
Python小记
时间:
2016-05-12 15:46:06
阅读:
167
评论:
0
收藏:
0
[点我收藏+]
标签:
1.使用a = raw_input(‘****:‘)时,raw_input()返回的值是字符串类型,如要接收一个数值类型的输入,需要加强制类型转换,如 a = int(raw_input(‘****:‘)),但如果int()识别括号中的内容为字符串,并不为合法数字时会报错,程序退出。
2.d1=[‘ss‘,88,20.3] //list类型,可修改,d[index],index为下标0,1,2...,删除时d.pop()
d2=(‘54‘,74,‘my‘) //tuple类型,不可修改,d[index],index为下标0,1,2...
d3=(‘54‘,[85,‘ss‘]) //组合类型,[]list中的可做修改和删除,d[index],或者d[index1][index2],index为下标0,1,2...
d4={‘aa‘:87,‘bb‘:42,0:60} //dic类型(map),键值对,d{key:value,...},d[key],d.get(key,-1)表示无匹配值则返回-1,key不可变,Hash算法,删除时d.pop(key)
d5=set([1,2,3]) //set类型,key的集合,不存在重复key,创建时参数必须为list类型,后期添加d.add(8)参数为数值型或字符串型,删除时d.remove(key),s1&s2两个结合的交,s1|s2两个集合的并
3.def函数返回多值其实是返回到一个tuple类型中,语法上tuple可以不带().调用函数时用一个tuple变量来接收。
4.在Python中定义函数,可以用必选参数、默认参数、可变参数和关键字参数,这4种参数都可以一起使用,或者只用其中某些,但是请注意,参数定义的顺序必须是:必选参数、默认参数、可变参数和关键字参数。
如def func(a,b=0,*c,**d)//c是可变参数接收的是tuple类型(省略括号),d是关键参数接收的是dic类型。func(1,2,‘12’,14,‘ss’,value=78)输出为a=1,b=2,c=(‘12‘,14,‘ss‘),d={‘value‘:78}.
5.L=[x*x for x in range(10)]为一个list,输出为[0,1,4,9,16,25,36,49,64,81],系统存储的是变量。
G=(x*x for x in range(10))是一个生成器Generator,存储算法,每次调用G.next()才会去计算下一个值。
函数中加了yield表示当前函数为生成器,执行时遇到到yield就中断一次,下次又继续执行。
6.数值类型和字符串类型转换:‘%s‘%x表示把数值型的x转换为字符串类型,同样%d整数%s字符串%f浮点数%x十六进制数,%02d中0表示不足2位补0,%.2f表示小数点后保留两位。
7.map(f,[x1,x2..]),f为带一个参数的函数名,f作用于[x1,x2...]每个元素输出;reduce(f,[x1,x2...]),f为函数名,f为带多个参数的函数名,如参数个数为2,表示为f(f(f(x1,x2),x3),x4)等。
8.filter的使用:属于过滤系列
>>>def is_add(n):return n%2==0 //表示n%2==0返回True,否则返回False
>>>filter(is_add,[1,2,3,4,5,6,7,8,9]) //输出[2,4,6,8]
>>>def not_empty(s):return s and s.strip() //表示去除空格
>>>filter(not_empty,[‘A‘,‘ ‘,‘B‘,‘C‘,‘ ‘]) //输出[‘A‘,‘B‘,‘C‘]
9.>>>def cout():
fs=[]
for i in range(1,4):
def f():
return i*i
fs.append(f)
return fs
>>>f1,f2,f3=count() //调用f1(),f2(),f3()输出9,9,9
注意到返回的函数在其定义内部引用了局部变量args,所以当一个函数返回了一个函数后,其内部的局部变量还被新函数引用。在上述例子中,每次都创建了一个新的函数,然后把创建的函数都返回了。但是返回的函数都引用了变量i,但它并非立刻执行,直到调用f1(),f2(),f3()才会去执行。等到三个函数都返回时,它们所引用的变量i已经都变成了3.因此,返回闭包时牢记一点:返回函数不要引用任何循环变量,或者后续会发生变化的变量。
若一定要引用循环变量,方法为再创建一个函数,用该函数的参数绑定循环变量的当前值,无论该循环变量后续如何更改,已绑定到函数参数的值不变:
>>>def count():
fs=[]
for i in range(1,4):
def f(j):
def g():
return j*j
return g
fs.append(f(i))
return fs
>>>f1,f2,f3=count() //调用f1(),f2(),f3()输出1,4,9
Python小记
标签:
原文地址:http://blog.csdn.net/ge_gewu/article/details/51360345
踩
(
0
)
赞
(
0
)
举报
评论
一句话评论(
0
)
登录后才能评论!
分享档案
更多>
2021年07月29日 (22)
2021年07月28日 (40)
2021年07月27日 (32)
2021年07月26日 (79)
2021年07月23日 (29)
2021年07月22日 (30)
2021年07月21日 (42)
2021年07月20日 (16)
2021年07月19日 (90)
2021年07月16日 (35)
周排行
更多
Spring Cloud 从入门到精通(一)Nacos 服务中心初探
2021-07-29
基础的排序算法
2021-07-29
SpringBoot|常用配置介绍
2021-07-29
关于 .NET 与 JAVA 在 JIT 编译上的一些差异
2021-07-29
C语言常用函数-toupper()将字符转换为大写英文字母函数
2021-07-29
《手把手教你》系列技巧篇(十)-java+ selenium自动化测试-元素定位大法之By class name(详细教程)
2021-07-28
4-1 YAML配置文件 注入 JavaBean中
2021-07-28
【python】 用来将对象持久化的 pickle 模块
2021-07-28
马拉车算法
2021-07-28
用Python进行冒泡排序
2021-07-28
友情链接
兰亭集智
国之画
百度统计
站长统计
阿里云
chrome插件
新版天听网
关于我们
-
联系我们
-
留言反馈
© 2014
mamicode.com
版权所有 联系我们:gaon5@hotmail.com
迷上了代码!