zoukankan      html  css  js  c++  java
  • 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发送(SMTP)qq邮件
    google hack
    python多线程爬取网页
    windows自带的颜色编辑器居中
    (转)如何在任务栏添加托盘图标
    c++ 字符串转数字或数字转字符串
    (转)null和NULL和nullptr和””区别
    Windows系统自带选择文件的对话重写和居中处理
    ANSII 与Unicode,Utf8之间的转换
    (转) Windows如何区分鼠标双击和两次单击
  • 原文地址:https://www.cnblogs.com/rcat/p/9307821.html
Copyright © 2011-2022 走看看