• python中文件读写的相关操作及应用


    1:既读又写

    1 with open('数据',mode='r+',encoding='utf-8') as f:
    2     print(f.read())              #输出结果:python与人工智能密切相关
    3     f.write('java也不错')
    4     print(f.read())              #输出结果:无输出 ,如果我们想打印
    5                                  #  写入的内容,但是因为光标已经
    6                                  # 移到了字符串的结尾了,所以这里我们
    7                                  #可以使用tell()与seek()来确定位置

    改进过后:

    1 with open('数据', mode='r+', encoding='utf-8') as f:
    2     print(f.read())  # 输出结果:python与人工智能密切相关
    3     f.write('java也不错')
    4     print(f.tell())     # 输出结果:46  其中一个字母1个字节,一个汉字三个字节,所以下面-13
    5     f.seek(f.tell()-13)
    6     print(f.read())  # 输出结果:java也不错
    seek()将官光标的位置移到需要的位置,tell()返回当前光标的位置

    2:写读(不常用)

    1 with open('数据', mode='w+', encoding='utf-8') as f:
    2     f.write('java也不错')
    3     print(f.read())  # 输出结果:无任何输出,相比w的不同处就在于f.read()不会报错,同样,a+也是如此
    4                      #           就不在这里做赘述了

    3:readline()用法:每次只读一行

    1 with open('数据', mode='r+', encoding='utf-8') as f:
    2     print(f.readline())  # 输出结果:java也不错
    3     print(f.readline())  # 输出结果:python也是个好工具
    4     print(f.readline())  # 输出结果:c++也不逊色呦

    4:readlines()用法:每一行当作列表中的一个元素,然后打印出来

    1 with open('数据', mode='r+', encoding='utf-8') as f:
    2     print(f.readlines())  # 输出结果:['java也不错
    ', 'python也是个好工具
    ', 'c++也不逊色呦']

    5:for循环(可以将文件中的所有内容按照原文件格式打印)

    1 with open('数据', mode='r+', encoding='utf-8') as f:
    2     for line in f:
    3         print(line)          #输出结果:java也不错
    4                              #          python也是个好工具
    5                              #          c++也不逊色呦

    6:注册登录的应用

    username = input('请输入您需要注册的用户名:')
    password = input('请输入您的密码:')
    with open('list_of_info',mode='w',encoding='utf-8') as f:
        f.write('{}
    {}'.format(username,password))
    list_data = []
    i = 1
    while i <= 3:
        usn = input('请输入您的用户名:')
        psd = input('请输入您的密码:')
        with open('list_of_info', mode='r+', encoding='utf-8') as f1:
            for line in f1:
                list_data.append(line)
                # print(list_data)
        if usn == list_data[0].strip() and psd == list_data[1].strip():
            print('登录成功')
            break
        else:
            print('请重新登录!')
        i += 1


  • 相关阅读:
    python_paramiko_SSHException Invalid requirement, parse error at
    python_实现发送邮件功能
    人生格言-羊皮卷
    xshell的Solarized Dark配色方案
    vim常用的配置
    Hadoop1.2.1 HDFS原理
    Hadoop1.x目录结构及Eclipse导入Hadoop源码项目
    Hadoop1.2.1 出现Warning: $HADOOP_HOME is deprecated.的解决方案
    Hadoop1.2.1 启停的Shell 脚本分析
    Hadoop1.2.1 配置文件详解
  • 原文地址:https://www.cnblogs.com/rcat/p/9307821.html
Copyright © 2020-2023  润新知