python学习笔记(一)

本文详细介绍了Python编程的基础知识,包括字符串处理、列表与元组的操作、字典与集合的应用,以及函数定义与调用的方法。此外还讲解了递归、lambda表达式、filter和map函数的使用技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原始字符串r‘str’,末尾不能加\,或者加上‘\’进行转义
长字符串,三引号括起’’’
int(),str(),float(),内建转换函数
range(1.9)不包含上限

列表
append(elem)函数添加elem到列表末尾
extend(list)函数添加list到列表
insert(index,elem)添加str到index位置
remove(elem)删除elem
del list[index] 删除index对应元素
del list 删除整个链表
element=list.pop()弹出最后一个元素
list[index1:index3]分片从下限到上限的前一个,其中不包含上限
list[:], list[index:],list[:index]
成员关系运算符 in not in
dir(class)返回成员方法
list.count(elem)返回次数
list.index(elem,low,high)返回elem的index
list.reverse()原地反序
list.sort()原地排序
list.sort(reverse=True)降序

元组
tuplel:戴上了枷锁的列表
(elem,)必须要有逗号,空元组:()

字符串
和元组相似,可以分片,不可轻易修改
temp=temp[:2]+(2,)+temp[2:]
str.capitalize()第一个字符大写
str.casefold()所有字符小写,非原地
str.count(sub)统计sub的次数
startwith()和endwith
expandtabs把\t转化为8空格
find() index()
isalnum()全部是字母或者数字
str1.join(str2)用str1隔开str2
str.istrip()去空格
replace(old,new)
str.split(‘#’)默认以空格切割字符串,返回列表
splitlines()以换行符分割
translate.(table)
table=str.maketrans(‘s’,’b’)

字符串的格式化
“{0} love {1}”.format(“I”,”liufan”)
前面是位置参数,后面是关键字参数
或者“{a} love {b}”.format(a=“I”,b=”liufan”)
“{0:.1f} love {1}”.format(“26.995”,”liufan”)
0表示打印一位小数,冒号后面是格式化符号
“%c” % 97 格式化转换
‘% c %c %’ % (97,98,99)
%m.n m为宽度 n为小数点位数
‘010d’ % 999 十个宽度的十进制,其中空格用0代替
list()参数是一个可迭代对象转化为列表tulple转化为元组
非内置函数sum() max() min()
sorted(elem) list(reversed(elem)) list(enumerate(elem))
list(zip(a,b))打包a和b的对应值为元组[(a,b),…..]

函数
def function(para1,para2…):
body
实际参数arguments 形参paraments
函数文档’document’
查看函数文档为function.doc help()
关键字参数:function(para1=xxx,para2=xxx)在调用时
默认参数:def function(para1=xxx,para2=xxx)在定义时
收集参数:在参数前加上* def function(*para)
para=(收集参数为元组)
函数和过程,如果函数没有返回值返回的是一个none对象
可以返回多个值,例如返回列表,或者用逗号隔开(元组)
全局变量定义时声明global x 如果要在函数中修改全局变量也需要声明 global x
函数可以嵌套定义,内嵌函数只能在外层函数内调用

闭包
外函数返回内函数的引用
def funa(x)
def funb(y)
return x+y
return funb
调用funa(5)(6)=11
内函数修改外函数的局部变量,使用nonlocal声明一个非局部变量
def funa()
x=5
def funb()
nonlocal x
return x*=x
return funb

lambda
表达式,匿名函数
lambda x:2*x+1
g=lambda x:2*x+1
g(5)=11
多个参数
g =lambda x,y:x+y
g(3,4)=7

filter()函数
filter(function or none ,iter)
过滤掉iter中function为假的返回列表
例如过滤掉偶数
def old(x)
return x%2
temp=range(10)
show=filter(old,temp)
list(show)
等价于list(filter(lambda x:x%2,range(10)))
map()函数
map(function or none ,iter)
以function加工可迭代对象iter中的每个对象,返回列表
list(map(lambda x:x*2,range(10)))

递归
汉诺塔问题:
def move(n,x,y,z):
if n==1:
print (x,’ move to ‘,z,’\n’)
else:
move(n-1,x,z,y)
print (x,’ move to ‘,z,’\n’)
move(n-1,y,x,z)
move(3,’x’,’y’,’z’)

字典
dict={key:’value’}
d=dict(((’F’,70),(’i’,50),(’c’,60)其中dict()只有一个参数
d=dict(70=’F’,50=’I’,60=’c’)
len(d)返回键值对的数量
d[key]=value
del d[key]
dict.fromkeys((1,2,3),NONE)键123对应NONE
dict.keys()返回键dict.value返回值
dict.items()返回项
dict.get(key)如果键不存在返回一个None对象
dict.get(key,’没有’)不存在返回没有
in,not in成员操作符
dict.clear()清空一个字典
dict.popitem()随机弹出一个
dict.setdefault(key,’None’)设置默认值的键
dict.updata(a)用字典a更新dict

集合
set={1,2,3}无映射的花括号内的值就是集合,值是惟一的
num=set(num)筛选num列表中的重复元素
in,not in 成员操作符
set.add(value)
set.remove(value)
set_1=frozenset(set_0)不可变集合

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值