以下是搜索内容: 关闭

  • 首页
  • 日志
  • 友情链接
  • 关于我

KoiNL.

愿世间美好 温柔以待

“锦鲤握运,未离我韵”

“愿好运常在”

18 分类
0 标签
16 归档
  • 小站首页
  • 个人日志
  • 友情链接
  • 关于自己
  • 我的工具
站点信息

文章数目: 84 篇

最近动态: 2天前

上线时间: 531天

当前版本: v3.0.0

第五章 文件操作

分类: Python
标签:

创建日期:2022-02-10 14:37:24

本章节讲了文件的开关读写操作与文件备份和文件夹的一些操作. 酱, 点击”more”观看更多吧!

第五章 文件操作

文件的基本操作

打开open

f = open('name', 'mode')
f为文件对象
name: 目标文件名的字符串或路径
mode: 访问模式:只读: r, 如果文件不存在, 报错; 可省
         写入: w, 文件无则创建;
         追加: a, 文件无则创建;
但凡带 +, 可读写; 但凡带 b, 为二进制格式

读写 read, write

读:

  • read(): f.read(num)
    num表读取几个字节, 未注明则全部
  • readlines(): f.readlines()
    返回为列表, 每一行为一个元素
    1
    print(f.readlines())   # ['hello\n','abc']
  • readline(): 第 n 次读取第 n 行内容
    f.write(‘aaa’)
  • 文件指针
  • 什么是文件指针?
  • seek(): f.seek(偏移量, 起始位置)
    起始位置: 0开头1当前2结尾

    关闭 close

    f.close()

    文件备份

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    # 接受用户输入目标文件名
    old_name = input('请输入您要备份的文件名: ')
    # 规划备份文件名
    # 提取目标文件后缀.的下标,为什么从右提取? 因为有奇奇怪怪的名字: a.mp3.mp4 是视频文件哒
    index = old_name.rfind('.')
    ########## 限制只有有效文件名进行备份 ##########
    if index > 0:
    postfix = old_name[index:]
    # 组织备份文件名与备份标签与文件后缀(切片噢)
    new_name = old_name[:index] + '_副本' + postfix
    # 备份文件写入数据
    # 打开源文件和备份文件
    old_f = open(old_name, 'rb')
    new_f = open(new_name, 'wb')
    # 将源文件数据写入备份文件
    while True:
    con = old_f.read(1024) # 避免数据过大导致死机, 设置一次读取的长度
    if len(con) == 0:
    break
    new_f.write(con)
    # 关闭文件
    old_f.close()
    new_f.close()

    文件和文件夹的操作

    要进行这个操作啊得借助os模块的相关功能;
    所以啊得进行导入: import os;
    然后再使用模块相关功能: os.func()
  • 文件
  • 重命名: os.rename(old_name,new_name)
  • 删除: os.remove(name)
  • 文件夹
  • 创建: os.mkdir(文件夹名字)
  • 删除: os.rmdir(文件夹名字)
  • 获取当前文件目录路径: os.getcwd()
  • 切换目录: os.chdir(新目录名)
  • 获取目录列表: os.listdir()

    例: 批量修改文件名, 可添加或删除指定字符串

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    import os
    # 设置增删字符串的标识, 1为添加, 2为删除
    flag = 1
    # 获取指定目录的所有文件列表
    file_list = os.listdir()
    # 将原有文件名增删指定字符串, 构造新名字
    for name in file_list:
    if flag == 1:
    new_name = 'Python_' + name
    elif flag == 2:
    new_name = name[len('Python_'):]
    # 进行重命名
    os.rename(name, new_name)

一二维数据的格式化和处理

一二维数据数据的存储格式为 CSV 格式,后缀为 .csv。

一二维数据的表示和读写

导入CSV格式到列表
将二维列表美观地处理一下
一维数据写入 CSV 文件
二维数据写入 CSV 文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
"""
price.csv 文件内容:
现在是~,我应该~,听!
早上!,睡觉!,呼噜
中午!,吃饭!,嗷呜
下午!,睡觉!,没错
晚上!,熬夜!,哼哼
price_write1.csv 文件内容:
现在是~,我应该~,听!
price_write2.csv 文件内容:
现在是~,我应该~,听!
早中晚!,睡吃睡!,呼呜酱
"""
file = open('price.csv', 'r', encoding="utf-8")
'''导入CSV文件到列表'''
ls=[]
for line in file:
line=line.replace('\n','') # [[...'听!\n'...: 去掉不必要的换行号
ls.append(line.split(',')) # 以split(',')方法从CSV文件中获取内容
print(ls)
'''逐行处理CSV格式数据'''
for i in range(len(ls)):
for j in range(len(ls[0])):
print(ls[i][j],end="\t")
print()
file.close()

'''一维数据写入CSV文件'''
file_write1=open('price_write1.csv','w')
ls=['现在是~','我应该~','听!']
file_write1.write(','.join(ls)+'\n')
file_write1.close()

'''二维数据写入CSV文件'''
file_write2=open('price_write2.csv','w')
ls=[['现在是~', '我应该~', '听!'], ['早中晚!', '睡吃睡!', '呼呜酱']]
for row in ls:
file_write2.write(','.join(row)+'\n')
file_write2.close()
浏览量

评论区

欢迎你留下宝贵的意见,昵称输入QQ号会显示QQ头像哦~

目录

  1. 1. 第五章 文件操作
    1. 1.1. 文件的基本操作
      1. 1.1.1. 打开open
      2. 1.1.2. 读写 read, write
      3. 1.1.3. 关闭 close
    2. 1.2. 文件备份
    3. 1.3. 文件和文件夹的操作
    4. 1.4. 例: 批量修改文件名, 可添加或删除指定字符串
    5. 1.5. 一二维数据的格式化和处理
      1. 1.5.1. 一二维数据的表示和读写

上一篇: 小贴士~

下一篇 第一章 程序基本结构

公告栏

《 

 》

Hello~近期剽窃本站内容频发,本站唯一指定网站:https://koinl.github.io。请认准。点击点击此处选择进入。
回到顶部
查看评论

Power By Hexo.

Theme:koinl.

信息来源于锦鲤未离