Grundlegende Betriebsmethoden für die Eingabe und Ausgabe von Python-Dateien

高洛峰
Freigeben: 2017-03-21 13:51:20
Original
1536 Leute haben es durchsucht

1. Python Datei-E/A
Dieses Kapitel beschreibt nur alle grundlegenden E/A-Funktionen Python-Standarddokument.

2. Auf dem Bildschirm drucken Die einfachste Ausgabemethode ist die Verwendung der Anweisung
print. Sie können null oder mehr durch Kommas getrennt übergeben. Das Ausdruck . Diese Funktion wandelt den von Ihnen übergebenen Ausdruck in einen -String--Ausdruck um und schreibt das Ergebnis wie folgt in die Standardausgabe:

Beispiel 1:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2016/9/25 15:12
# @Author  : wwyx
print "python 是一门面向对象语言"
Nach dem Login kopieren
Führen Sie die Ergebnisse von Beispiel aus 1 lauten wie folgt:

python 是一门面向对象语言
Nach dem Login kopieren

3. Tastatureingaben lesen Python bietet zwei
integrierte Funktionen zum Lesen einer Textzeile aus der Standardeingabe , Die Standardeingabe ist die Tastatur. Wie folgt:

  • raw_input

  • input

raw_input function Die Funktion raw_input([prompt]) liest eine Zeile aus der Standardeingabe und gibt eine Zeichenfolge zurück (unter Entfernung des nachgestellten Zeilenumbruchzeichens):
Beispiel 2:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2016/9/25 15:12
# @Author  : wwyx
strs = raw_input("请输入你想输入的字符串:")
print "您输入的字符串是:",strs
Nach dem Login kopieren
Beispiel 2 Ausführungsergebnisse:

请输入你想输入的字符串:python
您输入的字符串是: python
Nach dem Login kopieren

Eingabefunktion Die Funktion input([prompt]) ähnelt grundsätzlich der Funktion raw_input([prompt]), aber input kann einen Python-Ausdruck als Eingabe und empfangen Das Operationsergebnis wird zurückgegeben.

Beispiel 3:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2016/9/25 15:12
# @Author  : wwyx

inputStr = input("可以输入表达式:")
print "运行输入的结果:", inputStr
Nach dem Login kopieren
Beispiel 3 Laufergebnisse:

可以输入表达式:[x*4 for x in (2,3,4)]
运行输入的结果: [8, 12, 16]
Nach dem Login kopieren

4. Öffnen und schließen Sie DateienJetzt Sie Es ist bereits möglich, auf Standardein- und -ausgaben zu lesen und zu schreiben. Sehen wir uns nun an, wie die eigentliche Datendatei gelesen und geschrieben wird.
 Python bietet standardmäßig die erforderlichen Funktionen und Methoden, um grundlegende Dateivorgänge auszuführen. Sie können die meisten Dateivorgänge mit dem Objekt
file ausführen.
open-Funktion Sie müssen zunächst die in Python integrierte open()-Funktion verwenden, um eine Datei zu öffnen und ein Dateiobjekt zu erstellen, bevor die relevanten Methoden es zum Lesen und Schreiben aufrufen können.
Syntax:

file object = open(file_name [, access_mode][, buffering]
Nach dem Login kopieren
Die Details jedes Parameters lauten wie folgt:

Vollständige Liste der verschiedenen Modi zum Öffnen von Dateien: Modusbeschreibung

  1. r Öffnen Sie die Datei lesen- nur . Der Dateizeiger wird am Anfang der Datei platziert. Dies ist der Standardmodus.

  2. rb Öffnet eine Datei im Binärformat nur zum Lesen. Der Dateizeiger wird am Anfang der Datei platziert. Dies ist der Standardmodus.

  3. r+ öffnet eine Datei zum Lesen und Schreiben. Der Dateizeiger wird am Anfang der Datei platziert.

  4. rb+ Öffnet eine Datei im Binärformat zum Lesen und Schreiben. Der Dateizeiger wird am Anfang der Datei platziert.

  5. w Öffnen Sie eine Datei nur zum Schreiben. Wenn die Datei bereits vorhanden ist, wird sie überschrieben. Wenn die Datei nicht vorhanden ist, erstellen Sie eine neue Datei.

  6. wb Öffnet eine Datei im Binärformat nur zum Schreiben. Wenn die Datei bereits vorhanden ist, wird sie überschrieben. Wenn die Datei nicht vorhanden ist, erstellen Sie eine neue Datei.

  7. w+ öffnet eine Datei zum Lesen und Schreiben. Wenn die Datei bereits vorhanden ist, wird sie überschrieben. Wenn die Datei nicht vorhanden ist, erstellen Sie eine neue Datei.

  8. wb+ Öffnet eine Datei im Binärformat zum Lesen und Schreiben. Wenn die Datei bereits vorhanden ist, wird sie überschrieben. Wenn die Datei nicht vorhanden ist, erstellen Sie eine neue Datei.

  9. a Öffnen Sie eine Datei zum Anhängen. Wenn die Datei bereits vorhanden ist, wird der Dateizeiger am Ende der Datei platziert. Mit anderen Worten: Neue Inhalte werden nach bestehenden Inhalten geschrieben. Wenn die Datei nicht vorhanden ist, erstellen Sie eine neue Datei zum Schreiben.

  10. ab Öffnet eine Datei im Binärformat zum Anhängen. Wenn die Datei bereits vorhanden ist, wird der Dateizeiger am Ende der Datei platziert. Mit anderen Worten: Neue Inhalte werden nach bestehenden Inhalten geschrieben. Wenn die Datei nicht vorhanden ist, erstellen Sie eine neue Datei zum Schreiben.

  11. a+ 打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。

  12. ab+ 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。

File对象的属性
  一个文件被打开后,你有一个file对象,你可以得到有关该文件的各种信息。
  以下是和file对象相关的所有属性的列表:
  属性 描述

  • file.closed 返回true如果文件已被关闭,否则返回false。

  • file.mode 返回被打开文件的访问模式。

  • file.name 返回文件的名称。

  • file.softspace 如果用print输出后,必须跟一个空格符,则返回0。否则返回1。

示例4

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2016/9/25 15:12
# @Author  : wwyx
filetest = open("file.txt", "wb")

print "文件是否关闭:", filetest.closed
print "文件模式:", filetest.mode
print "文件名称:", filetest.name
print "是否强制在末尾加空格:", filetest.softspace
Nach dem Login kopieren

示例4 运行结果:

文件是否关闭: False
文件模式: wb
文件名称: file.txt
是否强制在末尾加空格: 0
Nach dem Login kopieren

close()方法
  File 对象的 close()方法刷新缓冲区里任何还没写入的信息,并关闭该文件,这之后便不能再进行写入。
  当一个文件对象的引用被重新指定给另一个文件时,Python 会关闭之前的文件。用 close()方法关闭文件是一个很好的习惯。
  语法:

fileObject.close();
Nach dem Login kopieren

示例5

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2016/9/25 15:12
# @Author  : wwyx
filetest = open("file.txt", "wb")

print "文件是否关闭:", filetest.closed
print "文件模式:", filetest.mode
print "文件名称:", filetest.name
print "是否强制在末尾加空格:", filetest.softspace
print "关闭文件!"
filetest.close()  # 关闭文件
print "文件关闭成功!"
Nach dem Login kopieren

示例5 结果:

文件是否关闭: False
文件模式: wb
文件名称: file.txt
是否强制在末尾加空格: 0
关闭文件!
文件关闭成功!
Nach dem Login kopieren

5.读写文件
  file对象提供了一系列方法,能让我们的文件访问更轻松。来看看如何使用read()和write()方法来读取和写入文件。
  write()方法
  write()方法可将任何字符串写入一个打开的文件。需要重点注意的是,Python字符串可以是二进制数据,而不是仅仅是文字。
  write()方法不会在字符串的结尾添加换行符('\n'):
  语法:

fileObject.write(string);
Nach dem Login kopieren

在这里,被传递的参数是要写入到已打开文件的内容。
示例6

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2016/9/25 15:12
# @Author  : wwyx
filetest = open("file.txt", "wb")
filetest.write("python 编程语言可以用到很多地方")
print "关闭文件!"
filetest.close()  # 关闭文件
print "文件关闭成功!"
print "重新打开读取文件!"
filetest = open("file.txt", "rb")
strs = filetest.read(1024)
print "文件我内容是:",strs
Nach dem Login kopieren

示例6 运行结果:

关闭文件!
文件关闭成功!
重新打开读取文件!
文件我内容是: python 编程语言可以用到很多地方
Nach dem Login kopieren

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

fileObject.read([count])
Nach dem Login kopieren

  在这里,被传递的参数是要从已打开文件中读取的字节计数。该方法从文件的开头开始读入,如果没有传入count,它会尝试尽可能多地读取更多的内容,很可能是直到文件的末尾。

  用例参考示例6

6文件位置

  • tell()方法告诉你文件内的当前位置;换句话说,下一次的读写会发生在文件开头这么多字节之后。

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

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

示例7:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2016/9/25 15:12
# @Author  : wwyx
filetest = open("file.txt", "wb")
filetest.write("python 编程语言可以用到很多地方")
# 打开文件
filetest = open("file.txt", "rb")
strs = filetest.read(10)
print "文件内容是:", strs
# 定位文件位置
p = filetest.tell()
print "文件当前位置", p

# 重新设置文件读取的位置
filetest.seek(0, 0)
print "将文件位置重新设置成功!!!"

print "重新设置指针位置之后读取的文件"
strs = filetest.read(10)
print "文件内容是:", strs


print "关闭文件!"
filetest.close()  # 关闭文件
print "文件关闭成功!"
Nach dem Login kopieren

示例7运行结果:

文件内容是: python 编
文件当前位置 10将文件位置重新设置成功!!!
重新设置指针位置之后读取的文件
文件内容是: python 编
关闭文件!
文件关闭成功!
Nach dem Login kopieren

7.重命名和删除文件
  Python的os模块提供了帮你执行文件处理操作的方法,比如重命名和删除文件。
  要使用这个模块,你必须先导入它,然后才可以调用相关的各种功能。
  rename()方法:
  rename()方法需要两个参数,当前的文件名和新文件名。
  语法:

os.rename(current_file_name, new_file_name)
Nach dem Login kopieren

示例8:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2016/9/25 15:12
# @Author  : wwyx
import os
filetest = open("myfile.txt", "wb")
# 文件写入内容
filetest.write("python 基础学习")
# 未年检关闭!
filetest.close()
# 文件重新命名
os.rename("myfile.txt", "renamefile.txt")

print "重新命名后的文件名称是:", filetest.name
# 以只读方式打开重命名文件
fileremane = open("renamefile.txt", "r")
strs = fileremane.read(100)
print "文件名称:", fileremane.name
print "读取修改后文件的内容是:", strs
Nach dem Login kopieren

示例 8 运行结果:

重新命名后的文件名称是: myfile.txt
文件名称: renamefile.txt
读取修改后文件的内容是: python 基础学习

注意:如果目录下面已经存在相关名称文件,那么重命名就会出现异常

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

os.remove(file_name)
Nach dem Login kopieren

示例 9

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2016/9/25 15:12
# @Author  : wwyx
import os
filetest = open("myfile.txt", "wb")
# 文件写入内容
filetest.write("python 基础学习")
# 未年检关闭!
filetest.close()
# 删除文件
os.remove("myfile.txt")
# 重新读取删除掉的文件
filetest = open("myfile.txt", "rb")
# 打印出文件内容
print "文件内容是:", filetest.read(10)
Nach dem Login kopieren

示例 9 运行结果

Traceback (most recent call last):
  File "E:/python/hello/untitled3/filetest.py", line 14, in <module>
    filetest = open("myfile.txt", "rb")
IOError: [Errno 2] No such file or directory: &#39;myfile.txt&#39;
Nach dem Login kopieren

运行结果:因为读取了一个删除掉的文件,所以会报异常

8. Python里的目录
  所有文件都包含在各个不同的目录下,不过Python也能轻松处理。os模块有许多方法能帮你创建,删除和更改目录。
  mkdir()方法
  可以使用os模块的mkdir()方法在当前目录下创建新的目录们。你需要提供一个包含了要创建的目录名称的参数。
  语法:

os.mkdir("newdir")
Nach dem Login kopieren

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

os.chdir("newdir")
Nach dem Login kopieren

  getcwd()方法

  getcwd()方法显示当前的工作目录。
  语法:

os.getcwd()
Nach dem Login kopieren

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

os.rmdir(&#39;dirname&#39;)
Nach dem Login kopieren

示例10:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2016/9/25 15:12
# @Author  : wwyx
import os
# 创建一个目录
os.mkdir("mydir")
# 获取当前目录
nowdir = os.getcwd()
print "当前目录:", nowdir
# 重新定位目录,修改目录路径
os.chdir("mydir")
# 获取修改后的目录路径
updatedir = os.getcwd()
print "修改后的当前目录是:",updatedir
ind = updatedir.rfind("\\")
print "截取后的字符串", ind
print "type:", type(updatedir)
newdir = updatedir[0:int(ind)]
print "new dir", newdir
# 重新定位目录,修改目录路径
os.chdir(newdir)
# 获取修改后的目录路径
updatedir = os.getcwd()
print "修改后的当前目录是:",updatedir
# 删除目录
os.rmdir("mydir")
# 获取删除后的目录路径
deletedir = os.getcwd()
print "修改后的当前目录是:",deletedir
Nach dem Login kopieren

示例10 运行结果:

当前目录: E:\python\hello\untitled3
修改后的当前目录是: E:\python\hello\untitled3\mydir
截取后的字符串 25type: <type &#39;str&#39;>new dir E:\python\hello\untitled3
修改后的当前目录是: E:\python\hello\untitled3
修改后的当前目录是: E:\python\hello\untitled3
Nach dem Login kopieren

9.文件、目录相关的方法
  三个重要的方法来源能对Windows和Unix操作系统上的文件及目录进行一个广泛且实用的处理及操控,如下:

  • File 对象方法: file对象提供了操作文件的一系列方法。

  • OS 对象方法: 提供了处理文件及目录的一系列方法。

Das obige ist der detaillierte Inhalt vonGrundlegende Betriebsmethoden für die Eingabe und Ausgabe von Python-Dateien. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!