Python 用户交互与格式化输出(五)

Python 用户交互与格式化输出

本人掘金号,欢迎点击关注:掘金号地址

本人公众号,欢迎点击关注:公众号地址

一、引言

在 Python 编程中,用户交互和格式化输出是非常重要的部分。用户交互允许程序与用户进行沟通,获取用户输入的数据;而格式化输出则能让程序以美观、易读的方式展示信息给用户。本文将详细介绍 Python 中用户交互和格式化输出的相关知识,并通过丰富的带注释代码示例进行说明。

二、用户交互

2.1 使用 input() 函数获取用户输入

input() 函数是 Python 中用于从用户那里获取输入的基本函数。当程序执行到 input() 函数时,会暂停并等待用户输入内容,用户输入完成并按下回车键后,input() 函数会返回用户输入的内容,且返回值类型为字符串。

python 复制代码
# 使用 input() 函数提示用户输入姓名
name = input("请输入你的姓名:")  # 将用户输入的姓名赋值给变量 name
print("你输入的姓名是:" + name)  # 打印用户输入的姓名

2.2 处理不同类型的用户输入

由于 input() 函数返回的是字符串类型,如果需要处理其他类型的数据,需要进行类型转换。

python 复制代码
# 获取用户输入的年龄,这里默认用户输入的是整数
age_str = input("请输入你的年龄:")  # 将用户输入的年龄作为字符串获取
age = int(age_str)  # 将字符串类型的年龄转换为整数类型
print("你的年龄是:", age)  # 打印转换后的年龄

# 获取用户输入的身高,这里默认用户输入的是浮点数
height_str = input("请输入你的身高(米):")  # 将用户输入的身高作为字符串获取
height = float(height_str)  # 将字符串类型的身高转换为浮点数类型
print("你的身高是:", height, "米")  # 打印转换后的身高

2.3 错误处理

在进行类型转换时,如果用户输入的数据无法正确转换,会引发异常。可以使用 try-except 语句来处理这些异常,增强程序的健壮性。

python 复制代码
try:
    # 尝试获取用户输入的整数
    num_str = input("请输入一个整数:")  # 获取用户输入的内容
    num = int(num_str)  # 尝试将输入内容转换为整数
    print("你输入的整数是:", num)  # 若转换成功,打印该整数
except ValueError:
    print("你输入的不是有效的整数,请重新输入。")  # 若转换失败,打印错误提示信息

三、格式化输出

3.1 使用 print() 函数进行基本输出

print() 函数是 Python 中用于输出信息的基本函数,可以直接输出变量或字符串。

python 复制代码
# 直接输出字符串
print("Hello, World!")  # 打印字符串 "Hello, World!"

# 输出变量
message = "Python is great"  # 定义一个字符串变量
print(message)  # 打印变量 message 的值

3.2 旧式字符串格式化(% 格式化)

在 Python 中,旧式字符串格式化使用 % 操作符。不同的数据类型有不同的格式化符号,如 %s 用于字符串,%d 用于整数,%f 用于浮点数等。

python 复制代码
# 格式化字符串和整数
name = "Alice"  # 定义一个字符串变量
age = 25  # 定义一个整数变量
print("我的名字是 %s,年龄是 %d 岁。" % (name, age))  # 使用 % 格式化输出姓名和年龄

# 格式化浮点数
pi = 3.1415926  # 定义一个浮点数变量
print("圆周率约为 %.2f" % pi)  # 使用 % 格式化输出保留两位小数的圆周率

3.3 新式字符串格式化(str.format() 方法)

Python 提供了 str.format() 方法来进行字符串格式化,这种方式更加灵活和易读。

python 复制代码
# 基本的 str.format() 使用
name = "Bob"  # 定义一个字符串变量
age = 30  # 定义一个整数变量
print("我的名字是 {},年龄是 {} 岁。".format(name, age))  # 使用 str.format() 方法格式化输出姓名和年龄

# 通过索引指定参数顺序
print("年龄是 {1} 岁的 {0} 很开心。".format(name, age))  # 通过索引指定参数顺序进行格式化输出

# 格式化浮点数
pi = 3.1415926  # 定义一个浮点数变量
print("圆周率约为 {:.2f}".format(pi))  # 使用 str.format() 方法格式化输出保留两位小数的圆周率

3.4 f - 字符串(格式化字符串字面值)

Python 3.6 及以上版本引入了 f - 字符串,这是一种更简洁、更直观的字符串格式化方式。

python 复制代码
name = "Charlie"  # 定义一个字符串变量
age = 35  # 定义一个整数变量
# 使用 f - 字符串进行格式化输出
print(f"我的名字是 {name},年龄是 {age} 岁。")  

# 格式化浮点数
pi = 3.1415926  # 定义一个浮点数变量
print(f"圆周率约为 {pi:.2f}")  # 使用 f - 字符串格式化输出保留两位小数的圆周率

四、总结与展望

4.1 总结

Python 中的用户交互和格式化输出是实现程序与用户有效沟通的重要手段。input() 函数方便我们获取用户输入,通过类型转换和错误处理可以确保输入数据的有效性。而在格式化输出方面,从旧式的 % 格式化,到新式的 str.format() 方法,再到简洁的 f - 字符串,为我们提供了多种选择,能够根据不同的场景和需求,以美观、易读的方式展示信息。

4.2 展望

随着 Python 的不断发展,用户交互和格式化输出的功能可能会更加丰富和强大。例如,可能会出现更智能的输入验证机制,减少开发者手动处理输入错误的工作量;在格式化输出方面,或许会引入更多个性化的格式化选项,以满足不同领域和场景下对信息展示的特殊要求。同时,在与图形化界面和网络交互等方面的结合上,用户交互和格式化输出也将有更广阔的发展空间。

相关推荐
lilye661 小时前
精益数据分析(10/126):深度剖析数据指标,驱动创业决策
大数据·人工智能·数据分析
CodeJourney.3 小时前
Python数据可视化领域的卓越工具:深入剖析Seaborn、Plotly与Pyecharts
人工智能·算法·信息可视化
Acrelgq233 小时前
工厂能耗系统智能化解决方案 —— 安科瑞企业能源管控平台
大数据·人工智能·物联网
Lucifer三思而后行3 小时前
零基础玩转AI数学建模:从理论到实战
人工智能·数学建模
_一条咸鱼_5 小时前
Python 数据类型之可变与不可变类型详解(十)
人工智能·python·面试
_一条咸鱼_5 小时前
Python 入门之基本运算符(六)
python·深度学习·面试
_一条咸鱼_5 小时前
Python 语法入门之基本数据类型(四)
人工智能·深度学习·面试
2201_754918415 小时前
卷积神经网络--手写数字识别
人工智能·神经网络·cnn
_一条咸鱼_5 小时前
Python 流程控制之 for 循环(九)
人工智能·python·面试