2017/04/26 Python学习的一些概念

  • input 返回的str类型,想要输入数字还需要进行类型转换num = int(input()),当然,如果此时输入字符就会报错
  • 循环的时候使用for a in b,b就是整个范围,a就是依次从b中取到的值;
  • 循环也可以使用while需要你还while 条件成立:执行
  • 尽量少用break和continue(结束此次循环,进入下一次循环),这个不是某种语言的要求,是程序结构的要求;
  • python的dict功能可以加快查找速度,dict用大括号{}来标记,格式为d = {A:a,B:b,C:c}
  • 找的时候就可以直接调用获得相应的结果d[A]。
  • 除了上面的格式来创建dict,也可以通过d[A] = e修改或者创建。
  • 可以通过f in d的方式来检查字典中是否存在key,存在则返回true,否则返回false;或者通过get的方式d.get(f),存在就返回value,否则返回none
  • 内部存放的顺序和放入的先后顺序无关。另外,key不可以改变
  • set是所有元素的集合,重复的会被剔除,仅保留一个,可以增加add,也可以减少remove。可以交运算和并运算
  • set和dict的区别在于set没有value
  • 不可变对象。像list这样的可变对象,内部元素的数目和内容都会改变,但是不可变对象不会改变
  • 函数
  • 定义函数def func_name(parameter):执行 return ret_val。可以传入或者返回多个参数值
  • 注意:函数的定义的位置一定要在使用之前
  • python可以设定传入多个参数传入,并且,可以设定,某些参数为具有默认值,比如def enroll(name, gender, age = 6,city = "Beijing"):,表示有两个参数agecity是具有默认值的,在使用的时候,可以只传入姓名和性别即可,年龄不输入就按照默认的。在第三个数据需要传入,第四个参数采用默认的时候,可以不写第三个参数的名字,如enroll('name_blabla','M',7);但是第三个默认,第四个参数自行输入的时候,则需要写明,如enroll('name_blabla','M',city = 'Tianjin')
  • 默认参数不能放在必选参数前面
  • 关键字参数比较好用, 最后定义一个关键字参数,想增加什么就增加什么,只要函数内部能够处理;
  • 命名关键字参数:就是对上面的关键字参数进行分析,然后处理

切片

  • 相当于matlab里面的索引,只不过使用方括号而已;不过,不同于matlab的还有一点,就是[a:b]是取出包含啊,但是不包含第b个元素的
  • 还可以倒序取出、间隔取出等等
  • 还可以字符串直接去出,不用通过变量名
  • 针对list和tuple

迭代
- 这个所谓的迭代,和数学或者说算法里面的迭代有点不太一样啊,python这里说的好像就是循环,针对list和tuple的循环

生成器
- 不必创建完整的list,从而节省大量的空间。在Python中,这种一边循环一边计算的机制,称为生成器:generator
- 创建方法1:只要把一个列表生成式的[]改成(),就创建了一个generator。要打印出每个元素,使用next()函数
- 但是不断next()太麻烦,使用for n in g:print(n)就可以很方便,因为是可迭代对象
- 这里的yield好难理解
- yield的一个特点就是执行到此即停止,下次调用从之后的第一句又开始到yield停止不妨试试下面的句子a = 'abc'
print(a)
yield a
b = 'ABC'
print(b)
yield b

从上面的这个实验大概可以看到yield的作用,但是具体的应用还需要在实际项目中进行思考

迭代器
- 区分可迭代和迭代器的区别,两者的包含关系
- 可以通过instance函数来检验变量的iterable可迭代属性和iterator迭代器属性

函数式编程
- 就是允许将一个函数作为变量传递到另一个函数中去,还允许返回一个函数
- 变量可以指向函数,函数的参量能够接受变量,那么函数的参量就能接受指向另一个函数的变量,这就成为高阶函数

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值