Python编程实战 · 基础入门篇 | 类型转换与输入输出

在前几章中,我们已经学习了变量、命名规范以及基本的数据类型(数字、字符串、布尔值)。 到这里,程序已经能"存数据"和"处理数据",但还缺少两个重要的能力------与外界交互类型转换

这就是本章的主题:

  • 如何让程序接收用户输入
  • 如何将结果输出到屏幕
  • 如何在不同数据类型之间自由转换

掌握这些能力,你的 Python 程序就能"活起来",与用户互动。


一 类型转换(Type Conversion)

在 Python 中,不同类型的数据常常需要互相转换。 例如,用户输入的数字其实是字符串,要进行计算前就得先转成整数。

Python 提供了多种内置转换函数:

函数 作用 示例
int(x) 转换为整数 int("10") → 10
float(x) 转换为浮点数 float("3.14") → 3.14
str(x) 转换为字符串 str(100) → "100"
bool(x) 转换为布尔值 bool(0) → False, bool("Python") → True

示例:字符串转数字

python 复制代码
num_str = "123"
num_int = int(num_str)
print(num_int + 10)  # 133

示例:数字转字符串

python 复制代码
age = 18
text = "我今年 " + str(age) + " 岁"
print(text)

示例:浮点与整数转换

python 复制代码
x = 3.7
print(int(x))   # 3(取整,非四舍五入)
print(float(5)) # 5.0

示例:布尔值转换

python 复制代码
print(bool(0))        # False
print(bool(""))       # False
print(bool("Hello"))  # True
print(bool(123))      # True

小结: 在 Python 中,空值(如 0''None、空列表 [])都会被视为 False, 其他情况都为 True


二 输出(Output)

输出就是把程序运行的结果显示给用户。 Python 提供的主要输出函数是 print()

1. 基本输出

python 复制代码
print("Hello, Python!")

输出:

复制代码
Hello, Python!

2. 同时输出多个内容

print() 可以输出多个变量,用逗号分隔:

python 复制代码
name = "Tom"
age = 18
print("姓名:", name, "年龄:", age)

输出:

复制代码
姓名: Tom 年龄: 18

注意:print() 会在内容之间自动添加一个空格。

3. 控制换行

默认情况下,print() 输出后会自动换行。 如果想在同一行输出,可以设置 end 参数:

python 复制代码
print("Hello", end=" ")
print("Python")

输出:

复制代码
Hello Python

4. 使用格式化输出

方法一:f字符串(推荐)

python 复制代码
name = "Alice"
score = 95
print(f"{name} 的分数是 {score}")

输出:

复制代码
Alice 的分数是 95

方法二:format() 方法

python 复制代码
name = "Bob"
age = 20
print("姓名:{} 年龄:{}".format(name, age))

方法三:百分号 % 格式化(早期写法)

python 复制代码
name = "Tom"
height = 1.75
print("姓名:%s,身高:%.2f 米" % (name, height))

三 输入(Input)

输入就是让用户在程序运行时输入数据。 Python 提供了 input() 函数来实现。

1. 基本用法

python 复制代码
name = input("请输入你的名字:")
print("你好,", name)

运行结果示例:

复制代码
请输入你的名字:小明
你好, 小明

2. 输入的数据类型

无论用户输入什么,input() 得到的都是 字符串类型(str)

python 复制代码
age = input("请输入年龄:")
print(type(age))  # <class 'str'>

这意味着如果要进行数学运算,必须手动转换:

python 复制代码
age = int(input("请输入年龄:"))
print("明年你将", age + 1, "岁")

四 综合示例:用户交互程序

让我们编写一个小练习程序,综合使用输入、输出和类型转换。

python 复制代码
print("=== BMI 计算器 ===")

height = float(input("请输入身高(米):"))
weight = float(input("请输入体重(公斤):"))

bmi = weight / (height ** 2)

print(f"您的BMI指数是:{bmi:.2f}")

if bmi < 18.5:
    print("体重过轻")
elif bmi < 24:
    print("体重正常")
elif bmi < 28:
    print("超重")
else:
    print("肥胖")

运行示例:

diff 复制代码
=== BMI 计算器 ===
请输入身高(米):1.75
请输入体重(公斤):68
您的BMI指数是:22.20
体重正常

五 输入输出的高级技巧

1. 指定分隔符 sep

print() 默认用空格分隔,可以改为其他符号:

python 复制代码
print("2025", "10", "14", sep="-")  # 2025-10-14

2. 控制输出格式

python 复制代码
pi = 3.1415926
print(f"圆周率约为:{pi:.2f}")  # 保留两位小数

3. 多行输入(技巧)

可以在多行输入时添加提示:

python 复制代码
data = input("请输入数据(可多行,按回车结束):\n")
print("你输入的是:", data)

六 小结

  1. 类型转换函数

    • int():转整数
    • float():转浮点数
    • str():转字符串
    • bool():转布尔值
  2. 输入输出函数

    • input():从用户获取输入(结果为字符串)
    • print():打印输出结果,支持多种格式化方式
  3. 常见格式化技巧

    • 使用 f 字符串最简洁直观:print(f"结果是 {value}")
    • 控制输出小数位:{num:.2f}
    • 自定义分隔符与结尾:sepend 参数

到这里,你已经学会了让 Python 与用户"对话"。

相关推荐
geovindu1 小时前
CSharp: Wordcloud
开发语言·后端·c#·.net·.netcore·词云
智购科技自动售卖机厂家1 小时前
2026自动售货机库存热力图分析:从设备分布到补货优先级的数据可视化实践~YH
大数据·python·信息可视化
鹿鹿学长2 小时前
微软把语音转写打到 0.1 美元/小时:5 个月降价 72%,AI 音频进入地板价时代
python·自动化
weixin_440730502 小时前
使用pytest中方法控制执行步骤(test_begin.py、test_end.py,@pytest.mark.run(order=1))
开发语言·python·pytest
小柯南敲键盘2 小时前
跨境电商批量图片翻译与视频字幕翻译,就用跨马AI工具
大数据·人工智能·python·音视频
geovindu2 小时前
CSharp: Command Pattern
开发语言·后端·c#·.net·.netcore·命令模式·行为模式
心易行者2 小时前
Python自动化测试7步落地法:用python在线运行省掉90%环境配置时间
java·开发语言·人工智能·python·log4j·ai编程
Boop_wu2 小时前
[LangGraph] 案例 2 : 支持搜索的智能代理系统
服务器·windows·python·langchain
2601_962297253 小时前
Python、Pytest、Allure、Selenium和Jenkins实现自动化测试集成实例
python·selenium·jenkins·pytest·allure
tedcloud1233 小时前
OpenLogi 怎么搭建?用 Rust 打造一个轻量的 Logitech 外设管理工具
linux·运维·服务器·开发语言·后端·rust·开源