栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python格式化输出

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python格式化输出

格式化输出
  • 格式化输出
  • 占位符
  • 转换数据类型
    • str转int类型
    • int转str示例1
    • int转str示例2

格式化输出

示例,现在有一需求,问用户的姓名,年龄,工作,爱好,然后将其打印成以下格式。

---------- info of Mark ----------
Name  : Mark
Age   : 22
Job   : Ops
Hobby : PingPong
---------- end ----------

实现方法如下,虽然字符串拼接的方式可以实现这种格式的输出,但是很麻烦,所以可以使用下面简单的方法——解锁新姿势~

只需要把需要打印的格式先准备好,由于里面的一些信息是需要用户输入的,没有办法预先知道,因此可以先放置一个占位符,再把字符串里的占位符与外部的变量做个映射关系就好啦。如下操作:

注: 看的时候有点懵,操作一遍就明白啦,如同任督二脉被打通一样 hhh

name = input("Name: ")
age = input("Age: ")
job = input("Job: ")
hobby = input("Hobby: ")

# 下面的每一个%s就是字符串里的一个占位符
info = '''
---------- info of %s ----------
Name  : %s
Age   : %s
Job   : %s
Hobby : %s
---------- end ----------
''' % (name, name, age, job, hobby)  # 这行的%就是把前面的字符串(%s)和括号里面的变量关联起来。
# 变量与字符串是逐行关联的,比如info of %s,关联的就是括号里的第一个变量name。Hobby  : %s,关联的就是最后一个变量hobby。
#%s是在字符串里的占位符,和字符串外%号后面括号里跟的数据是一一对应的。

print(info)

# 输出结果如下
Name: Mark
Age: 22
Job: Ops
Hobby: PingPong

# 看,和要求的一摸一样啦
---------- info of Mark ----------
Name  : Mark
Age   : 22
Job   : Ops
Hobby : PingPong
---------- end ----------


Process finished with exit code 0
占位符
  1. %s 是代表的字符串占位符 # s = string,字符串
  2. %d 是代表的数字占位符 # d = digit,数字
  3. %f 是代表的浮点数占位符 # f = float,浮点数
转换数据类型 str转int类型

如果把上边的age后面的%s换成%d,就代表你必须只能输入数字啦,但是不能直接换掉,因为input接收的所有输入默认都是字符串格式!

直接换掉,没有做其它更改的就会报如下错误啦。

Traceback (most recent call last):
  File "C:/Users/tgw/PycharmProjects/pythonProject/day1/格式化输出.py", line 14, in 
    ''' % (name, name, age, job, hobby)
TypeError: %d format: a number is required, not str

Process finished with exit code 1

上面其它的更改指的就是下面的操作啦——将age变量从字符串str类型转换成数字int类型。

age = int(input("Age: "))
print(type(age))  # 可以通过type查看age的类型
  # 看,转变成int类型了

相反,把数字转换成字符串也是必然可以的啦,str(yourStr)

int转str示例1
age = 22
print(age)
print(type(age))
print(str(age))
print(type(str(age)))

# 输出结果
22

22
  # 转变啦

Process finished with exit code 0
int转str示例2
age = 22
print(age)
print(type(age))
age = str(age)
print(age)
print(type(age))
# 输出结果
22

22
  # 转变啦

Process finished with exit code 0

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/866795.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号