[Python][输入输出]详细讲解
在Python中,输入和输出是最基本的编程操作。Python标准库提供了多个模块用于输入输出操作,如sys
模块用于操作系统交互,json
模块用于JSON数据的读写,pickle
模块用于Python对象的序列化和反序列化等。
以下是一些常见的输入输出操作:
- 输入操作:
Python 2.x中原生的raw_input()
函数用于获取用户输入,并将输入作为字符串。
name = raw_input("Please enter your name: ")
print "Hello, ", name
在Python 3.x中,raw_input()
被重命名为input()
,并且去掉了原来的raw_input()
。
name = input("Please enter your name: ")
print("Hello, ", name)
- 输出操作:
Python中的print
函数用于输出。
print("Hello, World!")
- 文件操作:
Python中可以使用open()
函数打开文件,并使用read()
,write()
,readline()
等方法进行文件的读写操作。
# 写入文件
with open('output.txt', 'w') as f:
f.write("Hello, World!\n")
# 读取文件
with open('output.txt', 'r') as f:
print(f.read())
- JSON操作:
json
模块提供了dump()
和load()
方法用于JSON数据的读写。
import json
# 写入JSON数据
with open('data.json', 'w') as f:
json.dump({'name': 'John', 'age': 30}, f)
# 读取JSON数据
with open('data.json', 'r') as f:
data = json.load(f)
print(data)
- Pickle操作:
pickle
模块用于Python对象的序列化和反序列化。
import pickle
# 序列化对象
with open('object.pkl', 'wb') as f:
pickle.dump({'name': 'Jane', 'age': 25}, f)
# 反序列化对象
with open('object.pkl', 'rb') as f:
data = pickle.load(f)
print(data)
- 格式化输出:
format()
方法可以用于字符串的格式化。
name = "John"
age = 30
print("Hello, my name is {} and I am {} years old.".format(name, age))
- 系统操作:
sys
模块提供了stdin
, stdout
, stderr
等属性用于与系统标准输入输出进行交互。
import sys
# 从标准输入读取数据
name = sys.stdin.readline()
sys.stdout.write("Hello, " + name)
以上是Python输入输出操作的一些基本示例。实际应用中,可以根据需要选择合适的模块和方法进行操作。
评论已关闭