2.格式化输出,输入,数据类型转化
格式化输出
即按照一定格式输出
格式符号 | 转换 |
---|---|
%s | 字符串 |
%d | 有符号十进制整数 |
%f | 浮点数 |
%u | 无符号十进制整数 |
%o | 八进制整数 |
%x | 十六进制整数(小写OX) |
%e | 小数点后面六位有效数字,以指数形式输出实数 |
%g | 根据大小自动选f格式或e格式,且不输出无意义的零 |
- 整数的输出
点击查看代码
num = 123456
# %o —— oct 八进制 了解
print("打印输出123456的八进制:%o"%num)
# %d —— dec 十进制
print("打印输出123456的十进制:%d"%num)
# %x —— hex 十六进制 了解
print("打印输出123456的十六进制:%x"%num)
- 浮点数输出
点击查看代码
number = 180.5
# %f ——保留小数点后面六位有效数字
print("我的身高是:%f"%number)
# %.3f,保留3位小数位
print("我的身高是:%.3f"%number)
# %e ——保留小数点后面六位有效数字,指数形式输出
print("我的身高是:%e"%number)
# %.3e,保留3位小数位,使用科学计数法
print("我的身高是:%.3e"%number)
# %g ——在保证六位有效数字的前提下,使用小数方式,否则使用科学计数法
print("我的身高是:%g"%number)
# %.3g,保留3位有效数字,使用小数或科学计数法
print("我的身高是:%.3g"%number)
- 字符串输出
点击查看代码
# %10s——右对齐,占位符10位 了解
print("格式化输出:%10s" % name)
print("格式化输出:%+10s" % name)
%-10s——左对齐,占位符10位
print("格式化输出:%-10s" % name)
# %.2s——截取2位字符串
# %10.2s——10位占位符,截取两位字符串
- %xd输出整数时,不足x位自动补空格
- %.xd或者%0xd输出整数时,不足x位自动补0
- %f输出浮点数时,默认输出六位小数,可通过%.xf保留x位小数
- 实例
点击查看代码
age = 18
name = '小刘'
weight = 105.5
student_id = 1
hight = 182
print('我的名字是%s' % name)
# 我的名字是小刘
print('我的学号是%4d' % student_id)
# 我的学号是 1
print('我的体重是%.2f⽄' % weight)
# 我的体重是105.50⽄
print('我的名字是%s,今年%d岁了,体重是%f斤,身高是%d' % (name, age, weight, hight))
# 我的名字是小刘,今年18岁了,体重是105.5斤,身高是182
print('我的名字是%s,明年%d岁了' % (name, age + 1))
# 我的名字是小刘,明年19岁了
通过format输出
相对基本格式化输出采用‘%’的方法,format()功能更强大,该函数把字符串当成一个模板,通过传入的参数进行格式化,并且使用大括号‘{}’作为特殊字符代替‘%’
点击查看代码
name = "小明"
age = 18
love = "打游戏"
# 1、不带编号
print("大家好,我是{},今年{}岁,喜欢{}".format(name,age,love))
# 2、带数字编号
print("大家好,我是{2},今年{0}岁,喜欢{1}".format(age,love,name))
# 3、附带关键字
print("大家好,我是{name},今年{age}岁,喜欢{love}".format(age=age,name=name,love=love))
f"str1{}str2"输出
在字符串前面加上f以达到格式化的目的,在{}里加入对象,此为format的另一种形式
点击查看代码
name = "小明"
age = 18
love = "打游戏"
print(f"大家好,我是{name},今年{age}岁,喜欢{love}")
转义字符
\n :换⾏
\t :制表符,⼀个tab键(4个空格)的距离
\ : 续行符
\' : 单引号
\" : 双引号
输入input
点击查看代码
# input接收的内容是字符串
x = input("请输入:")
y = int(input("请输入:"))
a , b = map(int, input().split())
data = sorted(list(map(int, input().split())))
data = [input() for i in range(n)]
输入的特点
- 当程序执⾏到 input ,等待⽤户输⼊,输⼊完成之后才继续向下执⾏。
- 在Python中, input 接收⽤户输⼊后,⼀般存储到变量,⽅便使⽤。
- 在Python中, input 会把接收到的任意⽤户输⼊的数据都当做字符串处理。
点击查看代码
password = input('请输⼊您的密码:')
print(f'您输⼊的密码是{password}')
# password类型为字符串
数据类型的转化
函数 | 说明 |
---|---|
int(x) | 将x转化为整数 |
float(x) | 将x转化为浮点数 |
str(x) | 将x转化为字符串 |
eval(str) | 将字符串中的数据转换成Python表达式原本类型 |
tuple(s ) | 将序列 s 转换为⼀个元组 |
list(s ) | 将序列 s 转换为⼀个列表 |
chr(x ) | 将⼀个整数转换为⼀个Unicode字符 |
ord(x ) | 将⼀个字符转换为它的ASCII整数值 |
hex(x ) | 将⼀个整数转换为⼀个⼗六进制字符串 |
oct(x ) | 将⼀个整数转换为⼀个⼋进制字符串 |
bin(x ) | 将⼀个整数转换为⼀个⼆进制字符串 |
快速体验
点击查看代码
# 1. 接收⽤户输⼊
num = input('请输⼊您的幸运数字:')
# 2. 打印结果
print(f"您的幸运数字是{num}")
# 3. 检测接收到的⽤户输⼊的数据类型 -- str类型
print(type(num))
# 4. 转换数据类型为整型 -- int类型
print(type(int(num)))
实例
点击查看代码
# 1. float() -- 转换成浮点型
num1 = 1
print(float(num1))
print(type(float(num1)))
# 2. str() -- 转换成字符串类型
num2 = 10
print(type(str(num2)))
# 3. tuple() -- 将⼀个序列转换成元组
list1 = [10, 20, 30]
print(tuple(list1))
print(type(tuple(list1)))
# 4. list() -- 将⼀个序列转换成列表
t1 = (100, 200, 300)
print(list(t1))
print(type(list(t1)))
# 5. eval() -- 将字符串中的数据转换成Python表达式原本类型
str1 = '10'
str2 = '[1, 2, 3]'
str3 = '(1000, 2000, 3000)'
print(type(eval(str1)))
print(type(eval(str2)))
print(type(eval(str3)))
# 将字符串转化为列表,元组等需要用eval()
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)