位置: 编程技术 - 正文
推荐整理分享Python中遇到的小问题及解决方法汇总(python过程中遇到的问题),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:python中遇到的困难,大家在python程序编写中曾经遇到过哪些错误?,python常见错误以及自己的解决办法,python小例子,python常见错误以及自己的解决办法,python中遇到的问题,python小例子,python小例子,内容如对您有帮助,希望把文章链接给更多的朋友!
本文会把学习过程中遇到的一些小问题和解决办法放在这里,以便于大家能够更好地学习python。
一、Python的异常处理
因为想到自己不断尝试写小程序的话会用到抛出异常信息来判断哪里出现了问题:
上面是Python的raise的用法,下面是自己用这个方法实现异常的抛出方法:
二、list转str
这个问题是因为自己的无知吧:
命令行传入的host(即ip地址)是list形式,想要通过list转为str的格式之后来进行socket.connect() , 报错:
自己想象的姿势:
正确的姿势:
上图证明自己的愚蠢(可能下次还会犯同样的错):
三、argparse函数
出发的动机是因为自己写的小程序要通过命令行的形式传参并执行命令.
用自己的简单小实例来显示函数的具体用法吧:
代码很简单,一看就懂大概函数是什么样子,重点是add_argument的参数,当你传入的cmd参数是这种方式的话:
我们可以看到,需要在-p之后跟一个int型的参数才可以,还有另外一种形式.
这种方式不需要跟参数,只需要类似于"python -h"这种形式就可以执行并得到想要的结果:
这里就需要对这个函数的各个参数的功能有个基本的了解,这样才能用起来舒服.
下图就是我们可以跟的参数,自己的问题就是区分清楚action和dest这两个参数,还有default,type等.
四、正则匹配
这个东西有点高深了,最初的想法是使用正则来转变接收到的数据的格式,问过达哥之后原本recv到的数据在encode之后的类型是"str",之前自己的想法是把数据转成list格式,之后提取之类的方便,但"str"类型也可以直接利用偏移来进行分析也可以,直接用"str[]"就可以搞定,因为这个过程中不需要可视化的打印出来,需要打印的是分析之后的结果,所以正则先用不到。
不过还是要把觉得不错的链接放一下:
Python入门篇之正则表达式
匹配任意字符(包括换行符)的正则表达式写法
w 以写方式打开 a 以追加模式打开 r+ 以读写模式打开 w+ 以读写模式打开 a+ 以读写模式打开 (我用到了这个模式,读写模式不断追加新的东西) rb 以二进制读模式打开 wb 以二进制写模式打开 ab 以二进制追加模式打开 rb+ 以二进制读写模式打开 wb+ 以二进制读写模式打开 ab+ 以二进制读写模式打开
还有一些操作的区别,我当时用到的问题是f.readline,每次都是读文件的一行,没有把全部的内容都读出来,所以区别还是很明显,要区分清楚.
写操作的用法和区别:
把str写到文件中,write()方法不会在str后加上一个换行符
把seq的内容全部写到文件中(多行一次性写入)。这个函数也只是忠实地写入,不会在每行后面加上任何东西。
关闭文件。在读命令或者写命令结束时,需要用关闭。如果文件关闭后依然操作,会抛出ValueError: I/O operation on closed file
返回文件操作标记的当前位置,以文件的开头为起点
返回下一行内容,并将文件操作标记位移到下一行。把一个file用于for … in file这样的语句时,就是调用next()函数来实现遍历的。
将文件操作标记为移动到offset位置。
七、遇到的报错情况
自己不想要定义太多的函数,个人感觉是想要将不同功能的函数进行分类,因此我尝试用到了类,知道自己这么做可能是想法上就有些不对的,但是想要瞎试试看看效果,所以结果就是报错了.
如图,这是别人遇到的方法,和我的是一样的,我没有定义静态的函数,所以每次使用之前都需要进行实例化才能调用.
总结
标签: python过程中遇到的问题
本文链接地址:https://www.jiuchutong.com/biancheng/381374.html 转载请保留说明!友情链接: 武汉网站建设