如前文,流程是程序的配角,而流程个别都须要解决数据,那数据如何进到流程,而最终解决后的数据又如何体现,这就是流程的输出与输入的问题。
本文介绍流程解决的数据的输出与输入。
流程中的输出,个别都会先保留在变量(即内存)中,而这个输出,能够来自于键盘(也称为规范输出)、文件、socket、串口,等等。同样,流程解决后的数据,也能够从变量(即内存)输入到屏幕(也称为规范输入)、文件、socket、串口,等等。
这里我只介绍从键盘或文件进行输出,以及输入到屏幕或文件。对于socket或串口,另找机会再行介绍。
(1)从键盘输入
这是常见的程序交互,能够应用raw_input或input函数来实现。
raw_input是一成不变地读取键盘的输出,input函数则尝试对输出进行运算再返回。
input函数能够输出数字、算术表达式、函数或返回数据结构的语句等,input函数解决后再返回内容。
input函数不能输出解决不了的字符串。
示例如下:
(2)从文件输出
也就是读取文件的内容。
以下是常常遇到的文件操作的示例–读取文件的内容,并且打印进去:
在应用open函数关上一个文件时,第一个参数是文件名,第二个参数是拜访模式。默认的拜访模式是只读,也就是’r’。拜访模式有可能会常常用到,这里给出所有拜访模式的含意的截图,图片源于 http://www.runoob.com/python/… :
(3)输入到屏幕
输入到屏幕,也叫规范输入,应用的函数就是print。根本所有python示例都波及到print的应用,这里不再独自示例。
(4)输入到文件
输入到文件,就是写文件。
在open文件时,应用带有写的拜访模式,之后再应用write函数来写文件,示例如下:
以上,介绍了python流程中数据的输出与输入,其中包含了文件内容的操作,包含读跟写。
在理论利用中,除了文件的读写,文件的重命名、删除,还有文件夹的操作(比方遍历、创立、删除等)也是常常遇到的解决环节,所以这里再做一些介绍。
(a)文件的重命名与删除
应用os模块,导入这个模块:
import os
文件重命名,应用os.rename函数,比方:
文件的删除,应用os.remove函数,比方:
(b)文件夹遍历
遍历文件夹以查找所有文件,个别有两个方法,一个是应用os.listdir函数,另一个是应用os.walk函数,这里别离演示一下。
小程的目录构造是这样的:
应用os.listdir,写一个递归查找函数,代码与成果如下:
另一个方法,是应用os.walk函数,应用这个函数的代码能够很简洁,代码与成果如下:
(c)文件夹创立与删除
文件夹创立,应用os.mkdir函数。
文件夹删除,应用os.rmdir或shutil.rmtree函数。
示例代码与成果如下:
须要留神,os.rmdir只能用于空目录的删除,如果目录非空会导致执行异样。对于空目录,或非空目录,都能够应用shutil.rmtree函数来删除,比方:
shutil.rmtree(‘2’)
另外,删除不存在的目录会导致异样,创立曾经存在的目录也会导致异样,所以,在操作之前能够先判断目录是否存在,比方:
import os, shutil if os.path.exists('2'): shutil.rmtree('2') if not os.path.exists('3'): os.mkdir('3')
上介绍了文件与文件夹的常见操作,对于没有介绍到的操作(比方os.getcwd、os.path.abspath等),你能够在理论应用过程中再进行查阅。
好了,总结一下,本文重点介绍了python流程的数据的输出与输入,包含从键盘或文件输出,输入到屏幕或文件,文章也介绍了文件与文件夹的常见操作,包含文件重命名、文件删除、文件遍历、文件夹的创立与删除等(从某个角度来说,文件夹也是文件)。