• python基础-3


    三元运算  :

    1 >>> a =2 
    2 >>> b = 5
    3 >>> val = a if a < b else b
    4 >>> val
    5 2
    6 >>> val = a if a > b else b
    7 >>> val

    8 >>> 5

    文件报错科普:

    提示错误OSError: [Errno 22] Invalid argument: ‘文件路径’。

    原因是在路径中含有 。在python中 是转义字符、就是这个原因 ,有两种方法,

    1、使用   取消转义 

    2、使用反斜杠代表路径、

    如下图所示:

    二进制模式打开文件 

    python3 打开文件,会默认以utf-8的格式打开,但是如果你不知道这个文件的格式,可以使用二进制的方式打开文件。

     1 f = open(file='E:python\14_test\lock_file',mode='rb') 

       对于不知道什么编码的文件,可以直接使用  chardet 这个第三方工具打开查看。

      result = chardet.detect(open(‘log’,'rb').read))

      print(result)

     打印如下图所示、会打印出字符编码、confidence相似程度为99%。

    这里总结一下:

    打开文件的模式有三种:
    r , 只读模式(默认)。
    w,创建模式。【不可读;不存在则创建;存在则删除内容;因为会清空原有文件的内容,一定要慎用】
    a, 追加模式。【可读; 不存在则创建;存在则只追加内容;】

       读写混合模式:

        r+:读写模式 ,以读的模式打开,支持写

       w+:写读模式,以写的模式打开,支持读。。。【别用这个了。。。】

    注意最后要记得关闭文件:f.close()
    w模式(如果没有就创建文件,如果有就清空文件,一定要慎用)
    a模式(追加模式,如果没有就创建文件,如果有就把内容追加进去)
    r+ 模式(读,追加模式)
    w+写读模式, a+追加读模式,
    总结

    其他:fileno  返回文件句柄的索引值--整数

               flush   把文件从内存刷新到硬盘   

               readable   判断文件是否可读 

               tell      返回光标所在字符位置  

               seek   去到字符位置

               readline    光标所在行

               seekable   判断终端位置

               truncate     从当前位置截断文件,保留从头到当前位置  

       

    文件修改

     

     1 import os
     2 f_name = 'jianzhi.txt'
     3 f_new_name ='%s.new' %f_name
     4 
     5 old_str = '殇之木乃伊:阿木木(Amumu) 1350'
     6 new_str='-----------------------------------'
     7 
     8 f = open(f_name,mode='r',encoding='utf-8')
     9 f_new = open(file=f_new_name,mode='w', encoding='utf-8')
    10 
    11 for line in f:
    12     if old_str in line:
    13         line = line.replace(old_str,new_str)
    14 
    15     f_new.write(line)
    16 
    17 
    18 f.close()
    19 f_new.close()
    20 print(f_new_name,f_name)
    21 os.rename(f_new_name,f_name)
    View Code

    这个地方有个问题非常奇怪,如下图所示的截图   ↓

         

     在进行文件重命名时,提示文件已存在,无法创建文件,这个是不应该的,,,暂时还没有想明白。。。

    ---------------------------------------------------这里记录一下---------------------------------------------------------

    windows上用replace别用rename

     

      函数 :

    默认参数  :  默认参数必须放在位置参数后面

     

     现写一个简单的员工信息增删改查程序。。。。----------------万恶的分割线-----------------------明天发

                         

                

     小结:懒惰是万恶之源,发现周末在家的两天里,学习进度不如在公司一边工作一边学习来的效率高,,,以后周末还是可以去外面的798咖啡屋里。。。

  • 相关阅读:
    jsp大文件(视频)上传问题
    python多版本的pip共存问题解决办法
    buntu系统安装rpm包的方法
    如何查看linux是32位还是64位
    python的if else
    python获取列表唯一值
    python列表转数组
    python文件操作write与writelines的区别
    python中字符串str的strip()方法
    ubuntu16.04安装cloudcompare及打开方法
  • 原文地址:https://www.cnblogs.com/wangcc7/p/8597685.html
Copyright © 2020-2023  润新知