Python 核心技术与实践 input&output

用户头像
Bonaparte
关注
发布于: 2020 年 08 月 23 日



input() 函数暂停程序运行,同时等待键盘输入;直到回车被按下,函数的参数即为提示语,输入类型永远是 string。



print() 函数则接受 string 、 number (数字)、 dict 、list 甚至是一些自定义类的 output。



int() ,把 string 强制转换为 int 整数;

float(),把 string 强制转换为 float 浮点数;

在生产环境中使用强制转换时,请记得加上 try except (错误和异常处理)



Python 对 int 整数类型没有最大限制,对 float 浮点数类型有精度限制(双精度,64位,单精度,32 bits);

numpy 扩展库 ,可以精确控制区间和数字精度;

C++ 的 int 整数类型 最大为 2147483647,超出这个数字会溢出。



计算机中文件访问的基础知识,计算机内核(kernel)对文件处理相对比较复杂,涉及到内核模式、虚拟文件系统、锁和指针等一系列概念。



用 open() function 拿到文件的指针,第一个参数指定文件位置(相对位置或绝对位置);第二个参数,"r" 代表读取、"w" 代表写入、 "rw" 代表读取和写入、 "a" 代表追加 append 不过用的比较少,打开的文件,如果写入,会从原始文件的最末尾写入。



拿到指针后,通过 read() function 来读取文件的全部内容。



给 read 指定参数 size ,用来表示读取的最大程度;

readline() 每次读取一行,常用语数据挖掘(data mining) 中的数据清洗。



open() function 对应于 close() function 打开了文件,在完成读取任务后,就应该立刻关掉它。



所有I/O都应该进行错误处理,因为I/O可能会有各种各样的情况出现,而一个健壮 (robust) 的程序,需能应对各种情况发生,而不应该崩溃(故意设计的情况除外)。



JSON 序列化



JSON (JavaScript object notation) 是一种轻量化的数据交换格式。



json.dumps() 函数,接受Python的基本数据类型,然后将其序列化为 string;

json.loads() 函数,接受一个合法字符串,然后将其反序列化为 Python 的基本数据类型。



I/O 操作需谨慎、一定要充分错误处理,并细心编码,防止出现编码漏洞;



编码时,对内存占用和磁盘占用要有充分估计,这样在出错的时候,就可很容易的找到原因;



JSON 序列化是很方便的工具,要结合实战多多练习;



代码尽量简洁、清晰,哪怕是初学阶段,也要有一颗当元帅的心。



发布于: 2020 年 08 月 23 日 阅读数: 24
用户头像

Bonaparte

关注

还未添加个人签名 2017.11.23 加入

还未添加个人简介

评论

发布
暂无评论
Python 核心技术与实践 input&output