zoukankan      html  css  js  c++  java
  • 文件(file)操作

    文件操作:
    1.打开文件,得到文件句柄并赋值给一个变量
    2.通过句柄对文件进行操作
    3.关闭文件

    #能调用方法的一定是对象
    # li = [1,2,3]
    # li.append('22')#列表对象
    # 'asc'.capitalize()#字符串对象
    # 昨夜寒蛩不住鸣。
    # 惊回千里梦,已三更。
    # 起来独自绕阶行。
    # 人悄悄,帘外月胧明。
    # 白首为功名,旧山松竹老,阻归程。
    # 欲将心事付瑶琴。
    # 知音少,弦断有谁听。


    文件打开方式:
         'r'       open for reading (default)
         'w'       open for writing, truncating the file first
         'x'       create a new file and open it for writing
         'a'       open for writing, appending to the end of the file if it exists
         'b'       binary mode
         't'       text mode (default)
         '+'       open a disk file for updating (reading and writing)
         'U'       universal newline mode (deprecated)


    # f = open('小重山','r',encoding='utf8')
    # data = f.read()
    # #data = f.read(5)  读出前5个字符
    # print(data)
    #
    # f.close()

    # #f = open('小重山','w',encoding='utf8')#创建此对象时清空文件内容
    # f = open('小重山2','w',encoding='utf8')#没有文件,先创建
    # print(f.fileno())句柄
    #
    # f.write('hello world ')
    # f.write('冷大爷')
    # f.close()


    import time
    f = open('小重山2','a',encoding='utf8')#a --- append
    f.write(' hello world ')#放入缓冲区
    f.write('冷大爷')
    #time.sleep(50)
    f.close()#写入磁盘,关闭文件

    # f = open('小重山2','r',encoding='utf8')

    # print(f.readline())
    # print(f.readline())
    # # readline(self, limit: int = -1) -> AnyStr:
    # #         pass

    # print(f.readlines())#转换成列表打印
    # # readlines(self, hint: int = -1) -> List[AnyStr]:
    # #         pass
    # number = 0
    # for i in f.readlines():
    #     number += 1
    #     if number == 6:
    #     #    # print(i.strip(),'i like it')
    #     # else:
    #     #     print(i.strip())
    #         ##i.strip() +  'i like it'
    #         i = ' '.join((i.strip(),"123456"))#字符串拼接用jion
    #     print(i.strip())
    # f.close()
    #
    #

    # num = 0
    # for i in f:    #这是for内部将f对象做成一个迭代器,用一行去一行
    #     num += 1
    #     if num == 6:
    #         i = ''.join([i.strip(),'jkl'])
    #
    #     print(i.strip())
    # f.close()


    # print(f.tell())#指出光标位置
    # print(f.read(4))
    # print(f.tell())
    #
    # f.seek(0)#调整光标位置
    # print(f.read(4))



    # import sys,time          #进度条效果
    # for i in range(30):
    #     sys.stdout.write('*')
    #     sys.stdout.flush()
    #     time.sleep(0.1)
    #
    #     # def flush(self, *args, **kwargs):  # real signature unknown
    #     #     """
    #     #     Finish the compression process.
    #     #
    #     #     Returns the compressed data left in internal buffers.
    #     #
    #     #     The compressor object may not be used after this method is called.
    #     #     """
    #     #     pass


    # f = open('小重山2','w',encoding='utf8')
    # f.truncate()
    # # truncate(self, size: int = None) -> int:
    # f.close()

    # #r+模式,w+模式,a+模式(可读)
    #r+  可读可写  只能在最后写  读时从头读
    # f = open('小重山2','r+',encoding='utf8')
    # print(f.readline())
    # f.write('岳飞')
    # f.close()

    # #w+  清空后再写  写后光标在最后
    # f = open('小重山2','w+',encoding='utf8')
    #
    # f.write('岳飞')
    # print(f.tell())#6----光标在‘岳飞’后面
    # f.seek(0)
    # print(f.readline())
    # f.close()

    #a+  在最后添加 从最后读


    #怎么修改文件?新建文件,复制
    #错误
    # f = open('小重山2','r+',encoding='utf8')
    # num = 0
    # for line in f:
    #     num += 1
    #     if num == 6:
    #         f.write('Jayce')#r w 光标不一致   r从头读  w从最后写
    # f.close()

    # f_read = open('小重山','r',encoding='utf8')
    # f_write = open('小重山2','w',encoding = 'utf8')
    # number = 0
    # for line in f_read:
    #     number += 1
    #     if number == 5:
    #         line = ''.join([line.strip(),'岳飞 '])
    #         #line = 'hello 岳飞 '
    #     f_write.write(line)
    #
    # f_read.close()

    #作业涉及方法
    # a = str({'beijing':{'1':123}})
    # print(type(a))
    # print(a)    #{'beijing': {'1': 123}}
    # a = eval(a)
    '''
    eval()文档
    eval(*args, **kwargs): # real signature unknown
         """
         Evaluate the given source in the context of globals and locals.

        The source may be a string representing a Python expression
         or a code object as returned by compile().
         The globals must be a dictionary and locals can be any mapping,
         defaulting to the current globals and locals.
         If only globals is given, locals defaults to it.
         """
    '''
    # print(type(a))
    # print(a['beijing'])

    #with
    f = open('log','r')
    f.readline()
    f.read()
    f.close()
    #与以下等价   with无须再close
    with open('log','r') as f:
         f.readline()
         f.read()
    print('冷大爷')

    #with同时对两个句柄进行操作
    with open('log1','r',encoding='utf8') as f_read , open('log2','w',encoding='utf8') as f_write :
         for line in f_read:
             f_write.write(line)

    冷垚
  • 相关阅读:
    Java实现调用API识别图像中的文字并对图片重命名
    推荐大家一个人工智能领域安全信息学方向旗舰会议(EI索引),诚邀广大学子投稿!
    python随笔 1
    Neo4j
    Web项目部署到tomcat外部并配置其他端口访问和无项目名
    springboot项目
    解决找不到参数 问题,MyBatisSystemException
    置顶功能 -- 数据表格的某行数据的置顶功能 -- Demo
    Spring-Task定时任务, (springboot项目, 动态设置时间) -- Demo
    BootStrap-table表格 -- Demo
  • 原文地址:https://www.cnblogs.com/lengyao888/p/10445156.html
Copyright © 2011-2022 走看看