python的个人学习小总结

本文深入探讨Python编程中的各种技巧和高级特性,包括数组操作、字符串处理、异常捕获、多维数组创建、文件名生成、类方法保护、类继承机制及异常处理等。通过具体示例,读者将了解如何在Python中更高效地编程。

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

请添加图片描述
请关注我的微信公众号,谢谢啦
python中 下面代码会输出[9] 如果超出数组边界不会报错
train_data = [i for i in range(10)]
print(train_data[9:12])

在 Python 和 Java 中,字符串是 “不可变对象” 。因此,每轮遍历拼接字符时,都需要新建一个字符串
‘’.join(res)用于把字符数组转换成字符串

for…else…的执行顺序为:

当迭代对象完成所有迭代后且此时的迭代对象为空时,如果存在else子句则执行else子句,没有则继续执行后续代码;如果迭代对象因为某种原因(如带有break关键字)提前退出迭代,则else子句不会被执行,程序将会直接跳过else子句继续执行后续代码

tmp = tmp.replace(word,‘’,1) 意思是把tmp中的word字符改成空,执行1次,但是必须把结果另存为,否则源字符串没有改变。

state = [[0 for _ in range(列)] for _ in range(行)]
多维数组中最外面的是第一维 最里面的是第N维

os.path.join()函数在不同操作系统中的表现不同,比如在linux系统中连接符为 ‘/’ ,但在windows中却为 ‘\’,这导致了在linux下能跑的程序,到了windows下因为找不到路径而失败!

解决办法:
用str.replace(a,b):意思是把a换成b

如何生成诸如 “0001.jpg”,"0002.jpg"等有规则的文件名?

文件名后缀

ext = “jpg”

文件名数字的位数

nz = 4

文件名的模板

imgFormat = “{0}{1}{2}{3}”.format(“{0:0”, nz, “d}.”, ext)

得到的结果为 ‘{0:04d}.jpg’,这是说明生成的文件名的数字至少有4位,不足在左边由0补齐

生成数字对应的文件名

对于第 n = 4 个文件

n = 4
imgName = imgFormat.format(n)

得到的结果为 ‘0004.jpg’

数组中, -1 指倒数第一个数据,None 用于改变维度

keras中,model.fit()的参数里有validation_split,用于从训练集中分出一部分当做验证集,还有一个是validation_data,如果这个被设置了,那validation_split就会失效,训练就会在每个batch后用该数据集进行验证

*args, **kwargs

*args : 指tuple(元组)
**kwargs : 指dict(字典)
def function(arg,*args,**kwargs):
print(arg,args,kwargs)

function(6,7,8,9,a=1, b=2, c=3)

输出 6 (7,8,9) {c:3,a:1,b:2}

zip 与enumerate

举个例子
filter = [64,128,256,512,512]
conv = [2,2,4,4,4]

则 zip(filter,conv) 结果为: (64,2)(128,2)(256,4)(512,4)(512,4)
而 for i,(j,k) in enumerate(zip(filter,conv)) 结果为 :
i j k
0 64 2
1 128 2
…类推

pycharm写函数说明

写好 def abc():之后,回车三个"""就可以了

在python类的方法名前面加 __ 可以在外部无法访问该方法,但可以使用

_ClassName_methodName 形式

判断 类与类之间的关系可以用 issubclass 函数,参数1是子类,参数2是父类。直接和间接的继承关系都返回True

如果想要获得已知类的父类们,可以直接调用该类的 .base

多继承

python中,如果两个或两个以上父类中有同名的方法,那么会按照父类书写的顺序继承。写在前面的父类会覆盖写在后面的父类同名的方法。

接口

hasattr(类,“方法/变量”)
setattr(类,“方法/变量名”,“新方法/变量名”) 如果没有方法则用第三个参数设置一个,或者是已有的另一个,具体查一下

异常

捕获异常之所以可以单独对某个异常进行处理,就是因为每个异常就是一个类,抛出异常的过程就是创建这些类的实例的过程。

使用 eval函数动态执行输入的表达式,需要在前面加上 ‘calc.’ calc 是调用的类名

try-except-else except可有可无
try-except-finally except可有可无

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

鹤城北斗

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值