一、前言

注意:此为内部小组学习资料,非售卖品,仅供学习参考。
本系列课程:
Python学习小组课程-课程大纲与Python开发环境安装
Python学习小组课程P1-Python基础(1)语法与数组
Python学习小组课程P2-Python基础(2)文件操作
Python学习小组课程P3-Python爬虫(1)HTML与Json解析
Python学习小组课程P4-Python办公(1)Excel保存
Python学习小组课程P5-Python办公(2)Excel读取与Word生成
Python学习小组课程P6-Python办公(3)邮件与钉钉消息通知
相关文件下载:
链接: https://pan.baidu.com/s/18RiXNEul-Jin5ZNNjZDT4Q 提取码: xbhs

二、知识点

2.0 字符串操作

知识点:换行符、字符串替换、字符串分割

#字符串换行符
str='抗蓝光、小灯泡\n神仙水、特润100'
print(str)
print('#'*50)#字符串替换
str=str.replace('\n','、')
print(str)
print('#'*50)#字符串截取
print(str[4:7])
print('#'*50)#字符串分割
str_list=str.split('、')
print(str_list)
抗蓝光、小灯泡
神仙水、特润100
##################################################
抗蓝光、小灯泡、神仙水、特润100
##################################################
小灯泡
##################################################
['抗蓝光', '小灯泡', '神仙水', '特润100']

2.1 从文件读取商品价格

知识点:文件读取、换行符、字符串替换、字符串分割

f=open("P2.1_data/goods_price.txt", "r", encoding='UTF-8')list=[]
while True:line = f.readline()if line:line=line.replace('\n','') #替换末尾的换行符号print(line) list.append(line.split(',')) #逗号分隔else:break
f.close()print(list)list=sorted(list,key=lambda x:int(x[1]),reverse=True)
print(list)
小灯泡,750
抗蓝光,185
神仙水,580
特润100,420
[['小灯泡', '750'], ['抗蓝光', '185'], ['神仙水', '580'], ['特润100', '420']]
[['小灯泡', '750'], ['神仙水', '580'], ['特润100', '420'], ['抗蓝光', '185']]

2.2 从文件读取商品价格,计算最低价、最高价、平均价

知识点:文件读取、min、max、sum、len函数

f=open("P2.2_data/goods_price.txt", "r", encoding='UTF-8')list=[]
while True:line = f.readline()if line:line=line.replace('\n','') #替换末尾的换行符号price=int(line.split(',')[1]) #逗号分隔list.append(price)else:break
f.close()print('最低价:',min(list))print('最高价:',max(list))print('平均价:',sum(list)/len(list))
最低价: 740
最高价: 760
平均价: 750.0

2.3 统计报价数最多的商品

知识点:文件读取、字典

a={}
# key value 键值对
a['小明']=5
a['小红']=3print(a)a['小明']+=1
print(a)
  {'小明': 5, '小红': 3}{'小明': 6, '小红': 3}
f=open("P2.3_data/goods_price.txt", "r", encoding='UTF-8')goods={}
while True:line = f.readline()if line:line=line.replace('\n','') #替换末尾的换行符号goods_name=line.split(',')[0] #逗号分隔if goods_name not in goods:goods[goods_name]=1else:goods[goods_name]+=1else:break
f.close()print(goods)goods=sorted(goods.items(),key=lambda x:x[1],reverse=True)
print(goods)
print(goods[0])
{'抗蓝光': 4, '小灯泡': 7, '神仙水': 2, '特润100': 2}
[('小灯泡', 7), ('抗蓝光', 4), ('神仙水', 2), ('特润100', 2)]
('小灯泡', 7)

2.4 列出指定目录下的所有txt文件并合并

知识点:目录列举、文件读取

扩展:软件著作权申请中的源码合并功能

import ospath='P2.4_data/'
files=os.listdir(path)content=''
for file_name in files:if os.path.isfile(path+file_name) and file_name.endswith('.txt'):print(f'读取{file_name}...')with open(path+file_name, "r", encoding='UTF-8') as f:str=f.read()content=content+strprint('读取完毕')out_file=f"{path}生成目录/content.txt"
with open(out_file, "w+", encoding='UTF-8') as f:print(f'写入{out_file}...')f.write(content)print('写入完毕')
读取1.txt...
读取完毕
读取2.txt...
读取完毕
读取3.txt...
读取完毕
写入P2.4_data/生成目录/content.txt...
写入完毕

2.5 文件分类

知识点:目录列举、文件移动、后缀名获取

import os
import shutilpath='P2.5_data/'
files=os.listdir(path)for file_name in files:if os.path.isfile(path+file_name):#获取后缀名ext=os.path.splitext(file_name)[1].replace('.','')#目录不存在则创建if not os.path.exists(path+ext):os.mkdir(path+ext)#移动文件print(path+file_name,'->',path+ext+'/'+file_name)shutil.move(path+file_name,path+ext+'/'+file_name)
P2.5_data/1.jpg -> P2.5_data/jpg/1.jpg
P2.5_data/1.txt -> P2.5_data/txt/1.txt
P2.5_data/2.avi -> P2.5_data/avi/2.avi
P2.5_data/2.jpg -> P2.5_data/jpg/2.jpg
P2.5_data/2.txt -> P2.5_data/txt/2.txt

Python学习小组课程P2-Python基础(2)文件操作相关推荐

  1. Python学习小组课程-课程大纲与Python开发环境安装

    一.前言 注意:此为内部小组学习资料,非售卖品,仅供学习参考. 本系列课程: Python学习小组课程-课程大纲与Python开发环境安装 Python学习小组课程P1-Python基础(1)语法与数 ...

  2. Python学习小组课程P6-Python办公(3)邮件与钉钉消息通知

    Python办公(3)邮件与钉钉消息通知 一.前言 二.知识点 1 发送邮件 2 钉钉机器人消息通知 一.前言 注意:此为内部小组学习资料,非售卖品,仅供学习参考. 本系列课程: Python学习小组 ...

  3. Python学习小组课程P4-Python办公(1)Excel保存

    一.前言 注意:此为内部小组学习资料,非售卖品,仅供学习参考. 本系列课程: Python学习小组课程-课程大纲与Python开发环境安装 Python学习小组课程P1-Python基础(1)语法与数 ...

  4. python学习笔记_第21天(文件操作--IO 技术)

    使用pickle 序列化 Python 中,一切皆对象,对象本质上就是一个"存储数据的内存块".有时候,我们需要将"内存块的数据"保存到硬盘上,或者通过网络传输 ...

  5. 【Python学习笔记】第一章基础知识:格式化输出,转义字符,变量类型转换,算术运算符,运算符优先级和赋值运算符,逻辑运算符,世界杯案例题目,条件判断if语句,猜拳游戏与三目运算符

    Python学习笔记之[第一章]基础知识 前言: 一.格式化输出 1.基本格式: 2.练习代码: 二.转义字符 1.基本格式: 2.练习代码: 3.输出结果: 三.输入 1.基本格式: 2.练习代码: ...

  6. Python学习笔记---------廖雪峰(基础和函数)

    Python学习笔记---------廖雪峰(基础和函数)

  7. 人工智能入门需要学习哪些课程?AI基础知识

    要入门人工智能,需要掌握一些基础知识和技能.以下是一些入门人工智能需要学习的课程和基础知识: 人工智能入门需要学习哪些课程?AI基础知识 数学基础:人工智能需要用到许多数学知识,包括线性代数.微积分. ...

  8. [Python从零到壹] 三.语法基础之文件操作、CSV文件读写及面向对象

    欢迎大家来到"Python从零到壹",在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界.所有文章都将结合案例.代码和作者的经验讲 ...

  9. 开始Python学习第二课(python环境安装)

    *** 开始Python学习第二课*** 一. Python语言简介 1. Python语言 1.1 Python的命名 2. Python基本概念 2.1 Python的简单介绍 2.2 Pytho ...

最新文章

  1. 天问电子少年团DIY作品
  2. led流水灯——51单片机程序
  3. Javascript - ExtJs - TreePanel组件
  4. CUDA10.0+python3.6+pytorch1.2.0+torchvision0.4.0
  5. 火星人谚语系列之四:对问题最深入的认识是知道答案
  6. mysql查看enum和set值_mysql中的enum和set类型_MySQL
  7. 【Jmeter】Jmeter java.lang.IllegalAccessError: class com.github.weisj.报错
  8. 判断两篇文章的相似度
  9. 用matlab道路交通信息化,tiaffic 基于matlab十字路口交通流模拟仿真,多种集合 263万源代码下载- www.pudn.com...
  10. 【Windows】 rundll32.exe 在 Windows10 上的应用
  11. 【论文笔记】DeiT论文阅读笔记
  12. 过年别再逼婚了,《黑镜》里的AI相亲系统是对爱情最好的匹配
  13. input的button类型,点击页面跳转
  14. 数据,数据元素,数据项,数据对象的区别
  15. J2ee学习流程(zz)
  16. 网络信息安全:消息认证
  17. 10.8 UiPath 数据筛选Filter Data Table的介绍和使用(Excel数据写入另一个Excel中)
  18. 03C语言基础-指针
  19. 纽约大学计算机硕士申请条件,美国纽约大学计算机科学硕士专业课程要求有哪些?申请要求有哪些?...
  20. FreeMarker Thymeleaf - 前端模板引擎

热门文章

  1. 模拟客服自动回复代码
  2. os什么意思python_Python中import os是什么意思?
  3. 利用百度地图根据三点求位置
  4. telegram设置中文
  5. 解决谷歌浏览器跨域问题
  6. Map和String互相转换
  7. 详细SpringBoot教程之入门(一)
  8. 计算机二进制存储单位,计算机中的存储单位你清楚吗
  9. 计算机可以计算出十的一百次方吗,世界上最大的数字单位 古戈尔(1古戈尔等于10的100次方)...
  10. 拆解易鑫2020:担保服务收入猛增,助贷业务营收占比超三成