Python零基础入门学习之输入与输出


Posted in Python onApril 03, 2019

简介

在之前的编程中,我们的信息打印,数据的展示都是在控制台(命令行)直接输出的,信息都是一次性的没有办法复用和保存以便下次查看,今天我们将学习Python的输入输出,解决以上问题。

复习

得到输入用的是input(),完成输出用的是print(),之前还有对字符串的操作,这些我们都可以使用help()命令来查看具体的使用方法。

文件

在Python2的时候使用的是file来创建一个file类,对它进行操作。Python3中去掉了这个类(我没有查到,只是猜测),使用open来打开一个文件,返回一个IO的文本包装类,之后我们使用这个类的方法对它进行操作。

Python零基础入门学习之输入与输出

使用文件

poem = '''\
Programming is fun
when the work is done
if you wanna make your work also fun:
use Python!
'''
#poem1 = '''liu'''
#读模式('r')、写模式('w')或追加模式('a')。
#如果有文件就读取,没有就创建
f = open('poem.txt','w')
#f = open('poem.txt','a')
f.write(poem)
#f.write(poem1)
f.close()

type(f)
print(f)

f = open('poem.txt','r')

while True:
 line = f.readline()
 if len(line) == 0:
 break
 print(line, end='')

f.close()

运行结果

Python零基础入门学习之输入与输出

如何工作

open方法第一个参数是你的文件名和路径,我的文件和程序在同一个文件夹下所以只需要填写文件名即可,第一个参数后面可以跟很多参数来完成不同的操作,而且很多参数是由默认值的,通过我们之前对函数的学习知道这样做的好处。

open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
 ========= ===============================================================
 Character Meaning
 --------- ---------------------------------------------------------------
 '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)
 ========= ===============================================================

这个mode参数是主要的参数,大家记住这个就可以,mode参数可以很多个参连在一起使用比如open('text1.txt','wb')这个就是使用二进制写数据,一会就会使用到。

这个文件是不用手动创建的,在你的路径下有这个文件的话,就会打开这个文件,如果没有会自动创建这个文件。

读文件的时候使用的是循环读取,使用包装类的readline()方法,读取每一行,当方法返回0时,表示文件读取完成,破坏循环条件,关闭IO。

Python零基础入门学习之输入与输出

自动创建的文件。

储存器

Python中提供了一个pickle模块。通过这个模块你可以在文件中存储任何Python对象,你又可以从这个文件中吧对象取出。这被称为持久的存储对象。还有另一个模块称为cPickle,它的功能和pickle模块完全相同,只不过它是用C语言编写的,因此它的速度要快很多(比pickle快1000倍,Python3中取消使用)。这里将使用Pickle模块。

使用import...as...语法可以用as后的字符代替as前的字符,模块使用起来更简洁。将数据保存到打开的文件中就是存储,open一个文件,调用模块的dump函数,将数据存到文件中。使用模块的load函数返回存储的对象,这个过程叫做取存储。

import pickle as p

shoplistfile = 'shoplist.data'

shoplist = ['apple','mango','carrot']

f = open(shoplistfile,'wb')
#将数据写入打开的文件中
p.dump(shoplist,f)
f.close()

del shoplist

f = open(shoplistfile,'rb')
storedlist = p.load(f)
print(storedlist)

print(__doc__)

运行结果

Python零基础入门学习之输入与输出

这里使用的就是二进制的写入,读取的时候也使用的二进制,和写入的数据有关,这个大家多多留意。

Python的输入与输出就写到这里,大家多多探索会有更多的知识等待你发掘。

Python 相关文章推荐
python模拟登录百度贴吧(百度贴吧登录)实例
Dec 18 Python
Python 分析Nginx访问日志并保存到MySQL数据库实例
Mar 13 Python
python实现颜色rgb和hex相互转换的函数
Mar 19 Python
python实现将英文单词表示的数字转换成阿拉伯数字的方法
Jul 02 Python
用python爬取租房网站信息的代码
Dec 14 Python
Python aiohttp百万并发极限测试实例分析
Oct 26 Python
python脚本后台执行方式
Dec 21 Python
python 获取当前目录下的文件目录和文件名实例代码详解
Mar 10 Python
python新手学习使用库
Jun 11 Python
python如何删除文件、目录
Jun 23 Python
Python 实现3种回归模型(Linear Regression,Lasso,Ridge)的示例
Oct 15 Python
教你怎么用Python生成九宫格照片
May 20 Python
快速排序的四种python实现(推荐)
Apr 03 #Python
搞定这套Python爬虫面试题(面试会so easy)
Apr 03 #Python
Python3实现从排序数组中删除重复项算法分析
Apr 03 #Python
Python3安装Pillow与PIL的方法
Apr 03 #Python
python使用requests模块实现爬取电影天堂最新电影信息
Apr 03 #Python
Python简直是万能的,这5大主要用途你一定要知道!(推荐)
Apr 03 #Python
Python3实现计算两个数组的交集算法示例
Apr 03 #Python
You might like
PHP操作xml代码
2010/06/17 PHP
PHP安全配置详细说明
2011/09/26 PHP
php中邮箱地址正则表达式实现与详解
2012/04/24 PHP
PHP中将网页导出为Word文档的代码
2012/05/25 PHP
使用PHP实现下载CSS文件中的图片
2015/12/06 PHP
工作中常用到的JS表单验证代码(包括例子)
2010/11/11 Javascript
js操作textarea 常用方法总结
2012/12/03 Javascript
JQuery对id中含有特殊字符的转义处理示例
2013/09/06 Javascript
jQuery中多个元素的Hover事件解决方案
2014/06/12 Javascript
浅谈jQuery中 wrap() wrapAll() 与 wrapInner()的差异
2014/11/12 Javascript
node.js中的fs.lchmod方法使用说明
2014/12/16 Javascript
js实现Select列表各项上移和下移的方法
2015/08/14 Javascript
javascript实现日期时间动态显示示例代码
2015/09/08 Javascript
深入php面向对象、模式与实践
2016/02/16 Javascript
深入理解JavaScript程序中内存泄漏
2016/03/17 Javascript
Javascript中作用域的详细介绍
2016/10/06 Javascript
ES6正则表达式扩展笔记
2017/07/25 Javascript
浅谈JS中this在各个场景下的指向
2019/08/14 Javascript
环形加载进度条封装(Vue插件版和原生js版)
2019/12/04 Javascript
javascript实现多边形碰撞检测
2020/10/24 Javascript
[02:18]《我与DAC》之工作人员:为了热爱DOTA2的玩家们
2018/03/28 DOTA
[33:23]Secret vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
Python实现登录人人网并抓取新鲜事的方法
2015/05/11 Python
Python中使用items()方法返回字典元素对的教程
2015/05/21 Python
使用Python+Splinter自动刷新抢12306火车票
2018/01/03 Python
Python实现PS滤镜的旋转模糊功能示例
2018/01/20 Python
python进阶之自定义可迭代的类
2019/08/20 Python
Django将默认的SQLite更换为MySQL的实现
2019/11/18 Python
Python2与Python3的区别点整理
2019/12/12 Python
Django import export实现数据库导入导出方式
2020/04/03 Python
python中什么是面向对象
2020/06/11 Python
判缓刑人员个人思想汇报
2014/10/10 职场文书
2014年优秀党员材料
2014/12/18 职场文书
MySQL之PXC集群搭建的方法步骤
2021/05/25 MySQL
python如何读取和存储dict()与.json格式文件
2022/06/25 Python
Python  序列化反序列化和异常处理的问题小结
2022/12/24 Python