• 文件操作


    继续python基础内容

    文件操作

    1.找到文件路径
    2.编码,文件是以什么编码方式存储的
    3.以什么方式去处理(只读?只写?追加?读写?写读?)

    处理方式:

    只读 r
    只写 w
    bytes写 wb
    bytes读 rb
    追加 a
    bytes追加 ab
    读写 r+
    写读 w+,a+(f.seek(0):光标到开头)

    # 文件操作 文件是由什么编码方式储存的,就要用什么编码方式打开
    #以只读方式打开文件
    f = open('d:jcc.txt',mode='r',encoding='gbk')#打开文件
    count = f.read()
    print(count)
    f.close()#关闭文件
    #以bytes方式读
    f = open('d:jcc.txt',mode='rb')#打开非文字文件,比如图片说明的
    count = f.read()
    print(count)
    f.close()#关闭文件
    # w:以写的方式打开文件,文件存在就直接写,不存在就创建
    f = open('d:jcc.txt',mode='w',encoding='gbk')
    f.write('蒋丞丞是个小仙女')
    f.close()#关闭文件
    # wb:以bytes写的方式打开文件
    f = open('d:jcc.txt',mode='wb')
    f.write('蒋丞丞是个小仙女!!!'.encode('utf-8'))
    f.close()#关闭文件
    # a:以追加的方式打开文件
    f = open('d:jcc.txt',mode='a',encoding='utf-8')
    f.write('蒋丞丞是个小仙女!!!')
    f.close()#关闭文件
    # 先读后写
    f = open('d:jcc.txt',mode='r+',encoding='utf-8')
    print(f.read())#光标到最后一个!
    f.write('蒋丞丞是个小仙女!!!')#添加到最后,此时光标在最后,再读没有内容
    f.close()#关闭文件
    # 先写后读
    f = open('d:jcc.txt',mode='r+',encoding='utf-8')
    f.write('蒋丞丞真的是个小仙女!!!')#光标在开头从开头写
    print(f.read())#从写完后光标所在位置往后读
    f.close()#关闭文件

    常用操作

    f = open('d:jcc.txt',mode='r+',encoding='utf-8')
    print(f.read(3))#读三个字符
    f.seek(3)#光标向后移动三个字节
    f.tell()#显示光标的位置,字节
    f.readable()#是否可读
    f.readlines()#一行一行的读,返回一个列表,每一行当成列表中的一个元素
    f.readline()#一行一行读
    f.truncate()#从源文件中截取一段
    print(f.read())
    f.close()
    # 以with的方式打开文件,不用自己关闭,自动关闭,可以同时打开两个文件
    with open('d:jcc.txt',mode='r+',encoding='utf-8') as f:
        pass

    小练习

    #小练习:
    '''
    用户注册,登录,三次机会
    '''
    name = input('name:')
    passwd = input('password:')
    with open('d:jcc.txt',mode='w+',encoding='utf-8') as f:
        f.write(name+','+passwd)
    print('*'*10+'login'+'*'*10)
    with open('d:jcc.txt',mode='r',encoding='utf-8') as f:
        list1 = f.read().split(',')
        fname = list1[0]
        fpasswd = list1[1]
    i = 0
    while i<3:
        loginname = input('name:')
        loginpasswd = input('password:')
        if loginname==fname and loginpasswd==fpasswd:
            print('登录成功!!!')
            break
        elif i==2:
            print('你被pass了')
        else:
            print('try again!')
        i +=1
  • 相关阅读:
    (ubuntu ufw)My firewall is blocking network connections from the docker container to outside
    nginx repos
    Xvfb新建虚拟X窗口,通过x11vnc启动VNC Server并转发Xvfb启动的虚拟窗口
    xdotool xdotool模拟击键和鼠标移动--CutyCapt是一个截图工具,xvfb-run
    zabbix debug and vulnerability https://www.zabbix.com/documentation/3.0/manual/concepts/sender
    初探 Nginx 架构
    Nginx缓存
    Nginx代理功能与负载均衡详解
    CentOS 7 部署 nginx-1.14.2
    LDAP第三天 MySQL+LDAP 安装
  • 原文地址:https://www.cnblogs.com/jiangchengcheng/p/9538099.html
Copyright © 2020-2023  润新知