python笔记(17)输入输出

一、标准输入与输出简介

Python通过内置的sys模块管理标准输入(stdin)、标准输出(stdout)和标准错误(stderr)。但对大多数简单应用而言,直接使用内置函数就足够了。

二、输入:input()函数

input()函数是获取用户输入的最直接方式。它会暂停程序执行,等待用户在终端输入一些文本,然后按下回车键。

python 复制代码
user_input = input("请输入你的名字:")
print(f"你好,{user_input}!欢迎来到Python世界。")

解释:

  • input()函数显示提示信息"请输入你的名字:",等待用户输入。
  • 用户输入的内容被赋值给变量user_input。
  • print()函数用于输出信息到屏幕上,这里使用f-string格式化字符串来包含用户的名字。

三、输出:print()函数

print()是最常用的输出函数,能够将文本或者变量的值打印到控制台。

python 复制代码
message = "学习Python是有趣的!"
print(message)
number = 42
print("有意义的数字:", number)

解释:

  • 第一个print()直接输出字符串。
  • 第二个print()展示了如何输出文本与变量的组合,中间用逗号隔开,自动转换为字符串并添加空格。

四、格式化输出

为了更灵活地控制输出格式,可以使用f-string、format()方法或百分号(%)格式化。

示例代码 (f-string):

python 复制代码
age = 25
print(f"我今年{age}岁了。")

五、文件输入输出

除了标准输入输出,Python还允许读写文件,这是处理大量数据时的重要手段。

语法格式如下

#open(filename, mode)

f = open('/tmp/workfile', 'w')

  • 第一个参数为要打开的文件名。
  • 第二个参数描述文件如何使用的字符。 mode 可以是 'r' 如果文件只读, 'w' 只用于写 (如果存在同名文件则将被删除), 和 'a' 用于追加文件内容; 所写的任何数据都会被自动增加到末尾. 'r+' 同时用于读写。 mode 参数是可选的; 'r' 将是默认值。

文件对象的方法

f.read()

为了读取一个文件的内容,调用 f.read(size), 这将读取一定数目的数据, 然后作为字符串或字节对象返回。

size 是一个可选的数字类型的参数。 当 size 被忽略了或者为负, 那么该文件的所有内容都将被读取并且返回。

f.readline()

f.readline() 会从文件中读取单独的一行。换行符为 '\n'。f.readline() 如果返回一个空字符串, 说明已经已经读取到最后一行。

python 复制代码
遍历的话可以读取所有行
for line in f:
    print(line,end='')

f.readlines()

f.readlines() 将返回该文件中包含的所有行。

如果设置可选参数 sizehint, 则读取指定长度的字节, 并且将这些字节按行分割。

f.write()

f.write(string) 将 string 写入到文件中, 然后返回写入的字符数。如果要写入一些不是字符串的东西, 那么将需要先进行转换:

f.tell()

f.tell() 返回文件对象当前所处的位置, 它是从文件开头开始算起的字节数。

f.seek()

如果要改变文件当前的位置, 可以使用 f.seek(offset, from_what) 函数。

from_what 的值, 如果是 0 表示开头, 如果是 1 表示当前位置, 2 表示文件的结尾,例如:

  • seek(x, 0) : 从起始位置即文件首行首字符开始移动 x 个字符
  • seek(x, 1) : 表示从当前位置往后移动x个字符
  • seek(-x, 2):表示从文件的结尾往前移动x个字符

f.close()

在文本文件中 (那些打开文件的模式下没有 b 的), 只会相对于文件起始位置进行定位。

当你处理完一个文件后, 调用 f.close() 来关闭文件并释放系统的资源,如果尝试再调用该文件,则会抛出异常。

f.flush()

刷新文件内部缓冲,直接把内部缓冲区的数据立刻写入文件, 而不是被动的等待输出缓冲区写入。

f.next()

返回文件下一行

示例代码 (文件写入):

python 复制代码
with open('greeting.txt', 'w') as file:
    file.write("你好,文件世界!")

示例代码 (文件读取):

python 复制代码
with open('greeting.txt', 'r') as file:
    content = file.read()
    print(content)

解释:

  • 使用with语句管理文件操作,确保文件正确关闭。
  • 'w'模式用于写入,会覆盖原有内容;'r'模式用于读取。
相关推荐
曲径海盗2 小时前
【Python 学习第 53 天】列表基础
python·学习笔记·编程入门
Dumbness2 小时前
群里 @ 机器人发"查订单",指令一条都没命中:微信群机器人在路由前漏掉的几步归一化
python·微信
aiks_yuan3 小时前
Java CPU 100% 怎么排查:JDK 11 起 jstack 自带线程 CPU 时间,不用再 top -H 换算十六进制(JDK 8、11、17 实测)
java
用户1614840955453 小时前
用 M4 Pro 跑羽毛球视频 AI 分析(二):TrackNet MPS 加速 3.2 倍、卡尔曼滤波补漏与自动回合剪辑
python
一壶浊酒伴余生3 小时前
新概念英语第一册 · 句法笔记
笔记·英语学习·英语语法·新概念英语
用户4019925568613 小时前
基于对话树回溯的社媒评论流买方意图识别与噪音过滤实践
python
用户0332126663673 小时前
使用 Python 加密或解密 PDF 文档
python
小七-七牛开发者4 小时前
让 Go 走得更远:用 LLGo 打通 Go 与 C/C++/Python 生态
python·编程·编译器·llvm·llgo
Flynn Liang4 小时前
AiServices 源码级拆解:一个接口如何变成 RAG Agent
java·langchain·源码分析·rag·langchain4j·aiservices
Flynn Liang4 小时前
LangChain4j 1.23 架构全景:Java 大模型应用的 6 层抽象
java·langchain·大模型·rag·ai agent·langchain4j