python文件操作

  • 前言
  • 一、JSON是什么?
  • 二、python对文件的操作
    • 1.写入文件内容
    • 2.打开、读取、关闭文件
      • 文件数据若有问题采用两种解决方式
    • file对象的函数列表
    • 写入文件内容
    • 对象转JSON
    • 内中的json形式的变量保存到文件
    • 读取json文件内容
    • 目录访问
    • 显示work路径下的所有类型为txt的文件
  • 总结

前言

随着人工智能的不断发展,Python这门技术也越来越重要,很多人都开启了学习python,本文就介绍了机器学习的基础内容。课程地址:https://aistudio.baidu.com/aistudio/course/introduce/7073


提示:以下是本篇文章正文内容,下面案例可供参考

一、JSON是什么?

JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。

二、python对文件的操作

1.写入文件内容

open(‘work/data.txt’,‘w’)第一个参数文件路径,第二个参数打开文件的模式
f.write(‘this is file content’)参数为写入的内容 f.close()关闭文件

f = open('work/data.txt','w')
f.write('this is file content')
f.close()

2.打开、读取、关闭文件

open() 为bif(内置函数),参数有多个,必须的是文件路径。 返回的一个文件对象。
file.readline(),读取文件中的一行。
file.close()关闭文件

f = open('work/train_data_cor.txt')
line = f.readline()
print(line)
line = f.readline()
print(line)
f.close()

文件数据若有问题采用两种解决方式

1.使用异常跳过有问题的数据

f = open('work/train_data_wrg.txt')
for line in f:data = line.strip().split(',')try:print('姓名:'+data.pop(0)+'生日:'+data.pop(0)+'时间:'+str(data))except:pass
f.close()

2.增加代码判断


#代码判断
f = open('work/train_data_wrg.txt')#1
for line in f:#2data = line.strip().split(',')if len(data) != 1:print('姓名:'+data.pop(0)+'生日:'+data.pop(0)+'时间:'+str(data))f.close()#3

file对象的函数列表

with open('work/train_data.txt') as f:data = f.read()print('整个文件\n'+data)f.seek(0)data = f.read(10)print('读取指定大小的文件内容\n'+data)print(f.tell())

写入文件内容

f = open('work/data.txt','w')
f.write('this is file content')
f.close()

对象转JSON

import json
class Athlete(json.JSONEncoder):def __init__(self,a_name,a_dob=None,a_times=[]):self.name = a_nameself.dob = a_dobself.times = a_timesdef top3(self):return sorted(set([self.sanitize(t) for t in self.times]))[0:3]def sanitize(self,time_string):if '-' in time_string:splitter = '-'elif ':' in time_string:splitter = ':'else:return (time_string)(mins,secs) = time_string.split(splitter)return (mins+'.'+secs)with open('work/train_data_cor.txt') as f:data = f.readline().strip().split(',')ath = Athlete(data.pop(0),data.pop(0),data)print(ath)ath_json = json.dumps(ath.__dict__)

内中的json形式的变量保存到文件

with open('work/json.txt','w') as f:json.dump(ath_json,f)

读取json文件内容


with open('work/json.txt') as f:ath = json.load(f)print(ath)

目录访问


import os
#返回当前工作目录
current_path = os.getcwd()
print('当前路径:'+current_path)
In [ ]
#改变当前工作目录
os.chdir('/home/aistudio/work')
#运行mkdir命令
os.system('mkdir today')from pathlib import Path
#返回当前绝对路径
abs_path = os.path.abspath('')
print('abs_path:'+abs_path)
#路径是否存在
Path(abs_path).exists()print('当前路径:'+os.getcwd())
listdir = os.listdir()
#返回当前路径下文件和文件夹名
print(listdir)#是否为文件夹
os.path.isdir('/home/aistudio/work/today')

显示work路径下的所有类型为txt的文件

import os
listdir = os.listdir('/home/aistudio/work')target = []
for name in listdir:#防止文件名与文件夹名一样的情况# print(os.path.isfile(name))temp = name.split('.')(filename,filetype) = (temp.pop(0),temp.pop(0))if filetype == 'txt':target.append(name)# print('name:%s,type:%s' %(filename,filetype))print(target)

总结

提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了python的文件处理和json对象

Day6 python对文件的操作——百度飞桨领航团零基础Python入门相关推荐

  1. 百度飞桨领航团零基础Python入门课学习心得

    一.关于飞桨领航团: 飞桨领航团是飞桨开发者的兴趣社区,为开发者们提供丰富的本地技术沙龙.Meetup.及线上交流平台,面向所有对人工智能及深度学习领域感兴趣的开发者开放.在各个城市/高校领航团团长及 ...

  2. 飞桨领航团零基础Python入门课第一天学习心得笔记

    day1: 字符串进阶: 字符串索引.切片: 切片的语法:[起始:结束:步长] 字符串[start: end: step] 这三个参数都有默认值,默认截取方向是从左往右的 start:默认值为0: e ...

  3. 【飞桨/百度领航团/零基础Python】学习心得

    [飞桨/百度领航团/零基础Python]学习心得 课程链接:https://aistudio.baidu.com/aistudio/course/introduce/7073 初识python Pyt ...

  4. 百度飞桨PaddelePaddle-21天零基础实践深度学习-【手写数字任务】2

    百度飞桨PaddelePaddle-21天零基础实践深度学习-[手写数字任务]2 模型设计 网络结构 损失函数 训练配置 优化算法 模型设计 网络结构 全连接神经网络 经典的全连接神经网络来包含四层网 ...

  5. 【飞浆百度领航团零基础Python】学习笔记

    飞桨百度领航团大作业 飞桨领航团是飞桨开发者的兴趣社区,为开发者们提供丰富的本地技术沙龙.Meetup.及线上交流平台,面向所有对人工智能及深度学习领域感兴趣的开发者开放.在各个城市/高校领航团团长及 ...

  6. 百度飞桨领航团python零基础训练营笔记

    一些感想 勤奋如春起之苗,不见其增,日有所长:懈怠如磨刀之石,日有所亏. 6天的时间很快就过去了,molly老师和朱老师交了很多干货(差点噎死),很多知识点还是没有很好的理解,学习一门编程语言从来不是 ...

  7. 『飞桨领航团』带你参加国际头部赛事signate柠檬图像分类,7日学会图像分类!...

    点击左上方蓝字关注我们 图像分类作为计算机视觉(CV)的核心之一,在人脸识别.垃圾分类.水果分类等实际场景都得到了广泛应用. 但对于刚接触深度学习CV方向的初学者来说,如何能系统性掌握图像分类知识,能 ...

  8. 飞桨领航团AI达人创造营第一课2021.7.26

    系列文章目录 第一章.让人拍案叫绝的创意都是如何诞生的 文章目录 系列文章目录 前言 一.课程表 二.课程内容 总结 前言 暑期充电季,百度飞桨领航团全新推出"AI达人创造营",十 ...

  9. 飞桨领航团表彰来了!

    飞桨领航团自2020年10月份成立以来,在一群志同道合的小伙伴的支持下,已经成长为一个覆盖海内外310所高校.23个城市的深度学习兴趣社团,变成了深度学习爱好者学习技术.结识同好.互助交流.实践共创的 ...

最新文章

  1. 狄利克雷卷积莫比乌斯反演证明
  2. kafka原理_Kafka动态配置实现原理解析
  3. ora-01033:oracle initialization or shutdown in progress 解决方法
  4. CentOS设置ssh连接的方法
  5. [html] 说说你对HTML元素的显示优先级的理解
  6. 定义输入回溯法解决0-1背包问题
  7. 机器学习笔记(二)线性回归模型实现
  8. C++ string split()和 replaceAll()
  9. 【SPOJ - NSUBSTR】Substring(统计长度为x的子串最多出现的次数--后缀自动机)
  10. spring boot学生课程考试系统的设计与实现毕业设计源码171548
  11. jspx格式手机打开,jspx来自埃及的java web快速开发框架
  12. PIC单片机的入门认识(以PIC12为学习目标)
  13. 什么是企业OA管理系统?企业公司oa管理系统软件价格攻略
  14. Charles设置代理之后,为什么电脑和手机都不能上网
  15. 服务器加油站能微信,加油可以微信吗?可以~支付宝呢?可以~
  16. mysql数据库服务器怎么打开_怎么启动mysql数据库服务器
  17. Centos7下新硬盘的挂载操作
  18. 天猫双十一自动刷喵币
  19. 由错误<note: candidate expects 1 argument, 0 provided>引发的思考
  20. 转一篇关于安装vue脚手架 执行到安装demo:setup e2e tests with nightwacth 要不要选择NO的问题的解释

热门文章

  1. 清华大学自动化系和计算机系,黄高 -清华大学自动化系
  2. Sql Server 强制大小写区分方法
  3. HTML 表格跨行与跨列
  4. 给国外电子邮箱发海外邮件用什么邮箱好?
  5. PAT文件的输入输出
  6. Redis生产环境你还敢用keys?我劝你放下屠刀,回头是岸!
  7. Orin 平台 调试 camera打开trace功能
  8. JavaScript——简易ATM取款机
  9. WebService系列之SSL异常handshake failure处理方法
  10. Sparrow算法篇 从日期取交集到思维模式-2