Python programming 10


基础永远值得花费90%的精力去学习加强。认识实践的重要性。

Ax Python Files I/O | 文件流

介绍基本的I/O函数。

打印到屏幕

使用print函数,用逗号分隔表达式,输出到标准输出。

#!/usr/bin/python

print("Python is really a great language,", "isn't it?")

读取键盘

有两个函数

  • raw_input(python2)
  • input(python3)

str = input("Enter your input: ")
print("Received input is : ", str)

执行

Enter your input: te
Received input is :  te

打开和关闭文件

open()

语法

file object = open(file_name [, access_mode][, buffering])

file_name: 文件名

access_mode:打开的模式,读、写、追加等

buffering:设置缓冲区。

模式列表

Sr.No. Modes & Description
1 r只读.
2 rb 二进制只读
3 r+ 读写
4 **rb+**二进制读写
5 w 只写
6 wb二进制只写,无则创建,有则覆盖
7 w+ 读写
8 **wb+**二进制读写
9 a 追加
10 ab 二进制追加
11 **a+**追加读
12 **ab+**二进制追加读

文件属性

打开一个文件,你就有了一个文件对象,可以获得该文件的各种信息。

Sr.No. Attribute & Description
1 file.closed 文件是否关闭,是则true,否则false
2 file.mode 返回文件打开时的访问模式
3 file.name 返回文件名
4 file.softspace 为0表示在输出一数据后,要加上一个空格符,1 表示不加,python3移除

#!/usr/bin/python

# Open a file
fo = open("foo.txt", "wb")
print "Name of the file: ", fo.name
print "Closed or not : ", fo.closed
print "Opening mode : ", fo.mode
print "Softspace flag : ", fo.softspace

执行 −

Name of the file: foo.txt
Closed or not : False
Opening mode : wb
Softspace flag : 0

close()

清除还没有写入的信息并关闭对象。

语法

fileObject.close()

#!/usr/bin/python

# Open a file
fo = open("foo.txt", "wb")
print "Name of the file: ", fo.name

# Close opend file
fo.close()

执行

Name of the file: foo.txt

读写文件

write()

将任何字符串写入到文件中,末尾不会添加换行符。

语法

fileObject.write(string)

#!/usr/bin/python

# Open a file
fo = open("foo.txt", "w")
fo.write( "Python is a great language.\nYeah its great!!\n")

# Close opend file
fo.close()

打开文件会发现一下内容

Python is a great language.
Yeah its great!!

read()

读取文件字符串

语法

fileObject.read([count])

count是指定读取的数量,如果无则直到文件结束。

读取写时产生的那个文件的内容

#!/usr/bin/python

# Open a file
fo = open("foo.txt", "r+")
str = fo.read(10);
print "Read String is : ", str
# Close opend file
fo.close()

执行

Read String is : Python is

文件位置

tell() 告诉你在文件中的当前位置

seek(offset[, from]) 更改文件的当前位置,offset是需要移动的字节数,from指定被移动时的位置,from为0则从开头开始,1表示当前位置,2表示结尾位置。

还是foo.txt

#!/usr/bin/python

# Open a file
fo = open("foo.txt", "r+")
str = fo.read(10)
print "Read String is : ", str

# Check current position
position = fo.tell()
print "Current file position : ", position

# Reposition pointer at the beginning once again
position = fo.seek(0, 0);
str = fo.read(10)
print "Again read String is : ", str
# Close opend file
fo.close()

执行

Read String is : Python is
Current file position : 10
Again read String is : Python is

重命名和删除文件

os module 提供了对文件的相关操作,你需要先导入该模块。这两个操作必须在文件关闭状态操作。否则会占用进程导致无法操作。

rename()

语法,两个参数,当前文件名和新文件名。

os.rename(current_file_name, new_file_name)

#!/usr/bin/python
import os

# Rename a file from test1.txt to test2.txt
os.rename( "test1.txt", "test2.txt" )

remove()

语法

os.remove(file_name)

#!/usr/bin/python
import os

# Delete file test2.txt
os.remove("text2.txt")

目录的操作

os模块还可以对目录进行操作。

mkdir()

创建一个目录

语法

os.mkdir("newdir")

#!/usr/bin/python
import os

# Create a directory "test"
os.mkdir("test")

chdir()

更改当前目录

语法

os.chdir("newdir")

#!/usr/bin/python
import os

# Changing a directory to "/home/newdir"
os.chdir("/home/newdir")

getcwd()

显示当前目录

语法

os.getcwd()

#!/usr/bin/python
import os

# This would give location of the current directory
print(os.getcwd())

rmdir()

删除目录

语法

os.rmdir('dirname')

#!/usr/bin/python
import os

# This would  remove "/tmp/test"  directory.
os.rmdir( "/tmp/test"  )

更多osfile的方法

file go

os go


文章作者: Enomothem
版权声明: 本博客所有文章除特别声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Enomothem !
  目录