关于python的一点学习笔记

注:此博客的中英文标点暂时懒得区分了,QAQ。。。
此人博客不值钱,要就随便拿去,但注意标明出处

一 python基础

  1. 整数运算最精确,浮点数可能会有四舍五入的误差
  2. python中,r’…’,’ ‘中间的字符串不进行转义
    print(’’‘line1
    line2
    line3’’’)用此格式可以省去\n
    and,or,not 分别标识:与,或,否
  3. if 后 一定要记得加冒号!!!
  4. python中没有真正意义上的常量,通常用大写字母来表示一个常量
  5. /为除法,//为地板除法(只取整数)
  6. ‘Hi,%s,you have %d money’%(‘Lingchao’,500)
    在一个字符串中,用%%来表示%
    format()用法:
    ‘Hello,{0},成绩提升了{1:lf}%’,format(‘小明’,17.1345)
    ->‘Hello,小明,成绩提升了17.1%’
    list:有序的集合,可以随时删除和添加其中的元素
    classmates=[‘AAA’,‘BBB’,‘CCC’]
    classmates[1]:‘BBB’
    classmates[-1]:‘CCC’
    classmates.append(‘DDD’)
    classmates.insert(1,‘EEE’) -> 在1处插入‘EEE’
    list中pop(),pop(x)删除x位置的元素,pop*()删除末尾的元素
    list中的数据类型完全可以不同,他的元素也可以是list
    tuple:与list相似,初始化后不可变
    t=(1,) 当tuple中只有一个元素时,这个元素后要加逗号,避免误解
    names=(‘A’,‘B’,‘C’)
    for name in names:
    names中的元素迭代赋值给name
    range(10),生成[0,10)的整数序列
    dict:字典,使用“键-值”的方式储存 使用哈希算法
    获取value值,1:dict[‘key’]
    2:dict.get(‘key’)
    dict={‘A’:1,‘B’:2,‘C’:3}
    ‘key’ in dict,判断key值在dict中是否存在
    get()方法,get(‘A’,-2)不存在则自己制定value
    get(‘A’)不存在则返回none
    set:与数学上的集合基本相同,不允许有重复元素,无序
    s=([1,2,3]),传入的参数为一个list
    add()方法,添加元素
    remove()方法,删除元素

二 函数

	函数名为对一个函数对象的引用,所以可以赋值给另一个变量
	def  函数名(参数1,参数2...):
	PS:python中一定要注意冒号和缩进的问题!!!哭。。。
	默认参数:
	power(x,n=2,s='ABC'),n和s为默认参数
	不指定n和s则使用默认值
	默认参数必须指向不可变对象!!!
	不可变对象:int,float,str,tuple,boole
	可变对象:list,set,dict
	def calc(*numbers):   调用方式:calc(1,2,3)
	def calc(numbers):     调用方式:calc([1,2,3])
	def calc(*___),可变参数
	def calc(**____)关键字参数
	关键字参数:
	def person(name, age, **kw):
		  print('name:', name, 'age:', age, 'other:', kw)
	可以只传入必选参数,也可以传入任意个数的关键字参数,和可变参数类似,也可以先组装出一个
	dict,然后,把该dict转换为关键字参数传进去
	命名关键字参数
	如果要限制关键字参数的名字,就可以用命名关键字参数,例如,只接收city和job作为关键字参
	数
	def person(name, age, *, city, job):
		  print(name, age, city, job)
	和关键字参数**kw不同,命名关键字参数需要一个特殊分隔符*,*后面的参数被视为命名关键字
	参数
	如果函数定义中已经有一个可变参数,后面跟着的命名关键字参数就不再需要特殊的分隔符*
	命名关键字参数必须传入参数名!

三高级特性
切片
L = [‘Michael’, ‘Sarah’, ‘Tracy’, ‘Bob’, ‘Jack’]
>>> L[0:3]
[‘Michael’, ‘Sarah’, ‘Tracy’]
如果第一个索引是0,还可以省略:
>>> L[:3]
[‘Michael’, ‘Sarah’, ‘Tracy’]
>>> L[-2:-1]
[‘Bob’]
迭代
for x in y:
列表生成式:
[x * x for x in range(1, 11) if x % 2 == 0]
[4, 16, 36, 64, 100]
生成器
生成器保存的是一个算法,generator和函数的执行流程不一样。函数时顺序执行,遇到return语
句或者时最后一行函数语句就返回。而变成generator的函数,在每次调用next()的时候执行,遇
到yield语句返回,再次执行时从上次返回的yield语句处继续执行
迭代器

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值