ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Python 基础学习三

2022-08-11 14:30:35  阅读:161  来源: 互联网

标签:__ 文件 ... Python 基础 except 学习 模块 todo


文件操作

  编码:读写编码保持一致,一般为UTF-8

  打开文件:open(name,mode,encoding)

    name:要打开目标文件名的字符串(可以包含文件所在得具体路径)

    mode:设置打开文件得(访问模式):只读、写入、追加等

    encoding:编码格式

  f = open('python.txt','r',encoding = 'UTF-8')

  文件对象常用方法:

    文件对象.read(num)  #num表示读取的长度(字节),没有num,就是读取所有;多个read后面的会在上一次读到得下一个开始读取

    文件对象.readlines()  #按照行的方式读取整个文件,返回的时一个列表,每一行数据为一个元素

    文件对象.readline()  #一次读一行

    直接拿通过for循环读取文件  for line in f:  #直接遍历f就行了,返回的是每一行得数据

    文件对象.close()  关闭文件对象  #内置了flush功能

    with open("文件对象",'r') as f:

      f.readlines()

      这个方法可以自动close不用手动close

    文件对象.write(xxxxxx"")  文件写入,不存在会直接创建,存在会把文件清空

    文件对象.flush()    内容刷新 直接调用write,内容只是写入了内存中,用flush才是正正写入硬盘中

    文件追加模式:将前面 r、w 改成a即可

      a模式,文件不存在会创建文件,存在会在后面追加写入。

 

异常

  捕获异常得作用:提前假设某处会出现异常,做好提前准备,当真的出现异常得时候,可以有后续手段

  基本语法:

    try:
        可能发生错误的代码
    except:
        如果出现异常执行得代码

  捕获指定异常语法:

    try:
        ...todo...
    except NameError as e:
        ...todo...

  捕获多个异常语法:

    try:
        ...todo...
    except(NameError,ZeroDivisionError,...) as e:
        ...todo...
        
    #这里的 as 是取别名

  捕获全部异常语法:

    try:
        ...todo...
    except Exception as e:
        ...todo...
# 和前面的直接写一个except捕获效果一样

  异常else,finally

            try:
                ...todo...
            except:
                ...todo...
            else:
                ...todo...    #不发生异常就执行
            finally:
                ...todo...    #无论发不发生异常都要执行

  异常是具有传递性的,依次往外抛

 

模块

  Python模块(module),是一个Python文件,以 py结尾。模块能定义函数,类和变量,模块里也可能包含可执行代码。

  语法:

  注意:当导入多个模块的时候,且模块内有同名功能,调用这个功能用的是后导入的模块的  

  当被导入的模块中有直接执行的方法时,导入的时候就会运行,不想它运行的话,

    将执行方法放入if __name__ == __main__即可。

  __all__变量

 

Python包

  本质还是模块

  安装第三方包:

标签:__,文件,...,Python,基础,except,学习,模块,todo
来源: https://www.cnblogs.com/xunzf0402/p/16574887.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有