本节介绍基本的IO函数和文件的读写操作。

    (1)读取键盘输入:

Python用于读取键盘输入的函数有两个:raw_input与input。

1)raw_input函数

从标准输入读取一个行,并返回一个字符串(去掉结尾的换行符)

>>> str=raw_input("请输入一个字符串")
请输入一个字符串
>>> str=raw_input("请输入一个字符串:\n")
请输入一个字符串:
my name is MenAngel
>>> print str
my name is MenAngel

2)input函数

input接收一个Python表达式作为输入,并将运算结果返回

>>> str=input("请输入一个普通字符串:\n")
请输入一个普通字符串:
Hello World
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<string>", line 1
Hello World
^
SyntaxError: unexpected EOF while parsing
>>> str=input("请输入一个表达式字符串:\n")
请输入一个表达式字符串:
78+32
>>> print str
110

用raw_input或者input读取键盘输入,用print输出到标准输入输出。

    (2)打开和关闭文件:

Python 提供了必要的函数和方法进行默认情况下的文件基本操作。大部分的文件操作是通过file对象实现的:

1)file对象的属性

Python中伴随着文件的打开是file对象的创建,通过file对象可以得到有关文件的各种信息:

>>> fo=open('text.py','w')      #两个参数都是字符串
>>> print "文件名:",fo.name
文件名: text.py
>>> print "文件名是否已经关闭:",fo.closed
文件名是否已经关闭: False
>>> print "访问模式:",fo.mode
访问模式: w
>>> print "末尾是否强制加空格:",fo.softspace
末尾是否强制加空格: 0

2)write方法:

write()方法可将任何字符串写入一个打开的文件。需要重点注意的是,Python字符串可以是二进制数据,而不是仅仅是文字。

write()方法不会在字符串的结尾添加换行符('\n'):

>>> fo.write("健康是福\n")
>>> fo.write("是是非非终为假,云淡风清总是真。")
>>> fo.close()
>>> print "文件模式为:",fo.mode
文件模式为: w
>>> print "文件是否已经关闭:",fo.closed
文件是否已经关闭: True

3)read方法:

read()方法从一个打开的文件中读取一个字符串。需要重点注意的是,Python字符串可以是二进制数据,而不是仅仅是文字。语法:

fileObject.read([count]);
>>> fo=open("text.py",'r')
>>> print "文件状态为:",fo.mode
文件状态为: r
>>> str=fo.read(30)
>>> print "读取的字符是:",str
读取的字符是: 健康是福
是是非非终为假,云淡

每次read指定之后,指针位置都会向后移动。

4)close方法:

File 对象的 close()方法刷新缓冲区里任何还没写入的信息,并关闭该文件,这之后便不能再进行写入。

当一个文件对象的引用被重新指定给另一个文件时,Python 会关闭之前的文件。

    (3)文件的定位:

tell()方法:告诉你文件内的当前位置,即下一次的读写会发生在文件开头这么多字节之后

seek(offset [,from])方法改变当前文件的位置。Offset变量表示要移动的字节数。From变量指定开始移动字节的参考位置。

1.如果from被设为0,这意味着将文件的开头作为移动字节的参考位置。
2.如果设为1,则使用当前的位置作为参考位置。
3.如果设为2,那么该文件的末尾将作为参考位置。

tell函数和seek函数运用实例:

>>> fo=open('text.py','r+')
>>> str=fo.read(30);
>>> print str
健康是福
是是非非终为假,云淡
>>> print "文件指针距离开头的位置是:",fo.tell()
文件指针距离开头的位置是: 31
>>> fo.seek(0,0)
>>> print "文件指针距离开头的位置是:",fo.tell()
文件指针距离开头的位置是: 0
>>> str=fo.read(40)
>>> print str
健康是福
是是非非终为假,云淡风清总是真

    (4)重命名和删除文件:

os模块提供了帮你执行文件处理操作的方法,比如重命名和删除文件。(使用前必须先导入)

1)rename()方法:

使用方法:

os.rename(current_file_name, new_file_name)
>>> import os
>>> os.rename('text.py','yan.text')
>>> fo=open('yan.text','r');
>>> str=fo.read(40)
>>> print str
健康是福
是是非非终为假,云淡风清总是真

2)remove()方法:

可以用remove()方法删除文件,需要提供要删除的文件名作为参数:

os.remove(file_name)
os.remove('yan.text')   #在执行此操作之前要确保没有进程占用这个文件

    (5)Python里的目录:

所有文件都包含在各个不同的目录下,不过Python也能轻松处理。os模块有许多方法能帮你创建,删除和更改目录。

1)mkdir()方法:

可以使用os模块的mkdir()方法在当前目录下创建新的目录:

os.mkdir("newdir")
>>> import os
>>> os.getcwd()
'E:\\Python2.7.12'
>>> os.mkdir('text')

2)chdir()方法:

可以用chdir()方法来改变当前的目录。chdir()方法需要的一个参数是你想设成当前目录的目录名称:

os.chdir("newdir")
>>> import os
>>> os.getcwd()
'E:\\Python2.7.12'
>>> os.chdir('text')
>>> os.getcwd()
'E:\\Python2.7.12\\text'

3)rmdir()方法:

rmdir()方法删除目录,目录名称以参数传递。在删除这个目录之前,它的所有内容应该先被清除。

>>> os.mkdir('text')
>>> os.rmdir('text') #相对路径
>>> os.mkdir('text')
>>> os.rmdir('E:\\Python2.7.12\\text\\text') #绝对路径

Python学习进程(13)文件与IO的更多相关文章

  1. Python学习系列(九)(IO与异常处理)

    Python学习系列(九)(IO与异常处理) Python学习系列(八)( 面向对象基础) 一,存储器 1,Python提供一个标准的模块,称为pickle,使用它既可以在一个文件中存储任何Pytho ...

  2. 【Python学习之六】文件操作

    环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 python3.6 一.文件的打开与关闭 使用open函数,可以打开一 ...

  3. python 学习笔记 13 -- 经常使用的时间模块之time

    Python 没有包括相应日期和时间的内置类型.只是提供了3个相应的模块,能够採用多种表示管理日期和时间值: *    time 模块由底层C库提供与时间相关的函数.它包括一些函数用于获取时钟时间和处 ...

  4. Python学习笔记之文件处理

    1.打开和关闭 要打开文件可以使用函数 open(),它位于自动导入模块 io 中.函数将文件名作为唯一不可缺少的函数,并返回一个文件对象.它还有一个名叫 mode 的参数,用于指定文件模式,其可取值 ...

  5. python学习笔记10--协程、IO、IO多路复用

    本节内容 一.协程 1.1.协程概念 1.2.greenlet 1.3.Gevent 1.4.协程之爬虫 1.5.协程之socket 二.论事件驱动与异步IO 三.IO 3.1.概念说明 3.2.IO ...

  6. Python学习笔记015——文件file的常规操作之一(文本文件)

    1 什么是文件 文件是用于数据存储的单位 文件通常用来长期保存数据 读写文件是最常见的I/O操作.Python内置了读写文件的函数,用法和C是兼容的. 读写文件的功能都是由操作系统提供的,一般而言,操 ...

  7. Python学习---进程 1225

    进程创建 进程创建: 第一种:直接创建 第二种:利用类来实现 第一种:直接创建 from multiprocessing import Process import time def f(name): ...

  8. Python学习进程(3)Python基本数据类型

        本节介绍在Python语法中不同的变量数据类型.     (1)基本数据类型: >>> a=10; >>> b=10.0; >>> c=T ...

  9. Python学习进程(2)Python环境的搭建

        本节主要介绍在windows和Linux平台上如何搭建Python编程环境.     (1)查看Python版本: windows: C:\Users\JMSun>python 'pyt ...

  10. python学习笔记(11):文件的访问与函数式编程

    一.文本文件读写的三种方法 1.直接读入 file1 = open('E:/hello/hello.txt') file2 = open('output.txt','w') #w是可写的文件 whil ...

随机推荐

  1. 一个奇怪的EL表达式错误

    下图是在Struts2的action中写的一个方法 JSP页面代码如下: 在页面访问如下路径:http://localhost:8088/maven_ssh/cust_getCustList 目前推测 ...

  2. 虚拟机设置bios第一启动为u盘

    虚拟机可以用u盘启动吗?虚拟机如何设置u盘启动?今天u启动小编亲自为大家编写u启动制作的u盘启动盘在虚拟机中的进入u盘启动的教程: 总共三步骤:安装创建虚拟机和准备u启动u盘 - 虚拟机添加u盘设备  ...

  3. 将bloomfilter(布隆过滤器)集成到scrapy-redis中

    Python分布式爬虫打造搜索引擎Scrapy精讲—将bloomfilter(布隆过滤器)集成到scrapy-redis中,判断URL是否重复 布隆过滤器(Bloom Filter)详解 基本概念 如 ...

  4. SecureCRTPortable.exe 如何上传文件

    如果未安装在命令行输入:yum install lrzsz rz     然后上传自己的文件.在解压

  5. java算法学习

    最大公约数 欧几里得算法 描述:计算两个非负整数p和q的最大公约数: 若q是0,则最大公约数为p. 否则,将p除以q得到余数r,p和q的最大公约数即为q和r的最大公约数. 根据算法的自然描述,我们可以 ...

  6. windows无法设置防火墙

    无法打开防火墙,出现错误代码0x80070422,解决方法:windows开始键->运行->调出运行窗口,输入services.msc,(或者控制面板->管理工具->服务)找到 ...

  7. No image!使用border-color属性来制作小三角形

    border属性在项目中使用的还是蛮频繁的.例如页签.按钮这样的. border简写属性是按照如下属性设置的: border:border-width/border-style/border-colo ...

  8. 启发式搜索技术A*

    开篇 这篇文章介绍找最短路径的一种算法,它的字我比较喜欢:启发式搜索. 对于入门的好文章不多,而这篇文章就是为初学者而写的,很适合入门的一篇.文章定位:非专业性A*文章,很适合入门. 有图有真相,先给 ...

  9. Android获取应用程序的信息

    1.获取应用程序的版本号: private String getAppVersionName() { String versionName = ""; try { PackageM ...

  10. ubuntu14.0 hadoop2.4.0 64位基于jdk1.7搭建

    注意:hadoop有两种运行模式,安全模式和非安全模式.安装模式是以指定在健壮的,基于身份验证上运行的,本文无需运行在非安全模式下,可以直接使用root用户. 本文用户是基于root用户来运行的 一. ...