python print如何在输出中插入变量
知乎上遇到这样一个题目:对于新垣结衣 2020 年收入 4.4 亿日元大家怎么看?
然后想着写程序输出在中国的价位,然后就会一目了然了。
1 日元和爽和人民币的换算过程
最开始的版本是这样的,连变量都不用插入:
# 1日元 ≈ 0.0591人民币
# 1人民币=16.9322日元
moneyJapan = 440000000
moneyChina =moneyJapan/16.9322
moneyShuang = moneyChina/2080000
money30Shuang = moneyShuang/30
money365Shuang = money30Shuang/12print('4.4亿日元等于X元人民币,X=:',moneyChina)print('4.4亿日元等于X爽, X=:',moneyShuang)print('4.4亿日元等于X月爽, X=:',money30Shuang)print('4.4亿日元等于X年爽, X=:',money365Shuang)
2 X的位置之争
但是观众老爷不满意,说如果能够把数值写在X处就好了。然后就需要在输出中插入变量。修改后的程序如下
# 1日元 ≈ 0.0591人民币
# 1人民币=16.9322日元
moneyJapan = 440000000
moneyChina =moneyJapan/16.9322
moneyShuang = moneyChina/2080000
money30Shuang = moneyShuang/30
money365Shuang = money30Shuang/12print("4.4亿日元=%s(RMB)" % moneyChina)print("4.4亿日元=%s(日爽)" % moneyShuang)print("4.4亿日元=%s(月爽)" % money30Shuang)print("4.4亿日元=%s(年爽)" % (money365Shuang))
这样结果就满足观众老爷们的要求了。输出处不用X代替就可以了。
3 print你累不累
但是观众老爷又说难道print不嫌累吗,于是决定减少print的次数,改4个print为1个print重写为:
于是写出了这样的程序:
# 1日元 ≈ 0.0591人民币
# 1人民币=16.9322日元
moneyJapan = 440000000
moneyChina =moneyJapan/16.9322
moneyShuang = moneyChina/2080000
money30Shuang = moneyShuang/30
money365Shuang = money30Shuang/12
print("4.4亿日元等于%s(RMB),%s(日爽),%s(月爽),%s(年爽)" % (moneyChina, moneyShuang, money30Shuang, money365Shuang))
结果也显得简单多了:
4 因为代码太长不简洁不美怎么办
既然已经改成这样了,但是我总感觉不够简洁,变量的名字太长了,不好,改为这样:
# 1日元 ≈ 0.0591人民币
# 1人民币=16.9322日元
JP = 440000000
RMB =JP/16.9322
RS = RMB/2080000
YS = RS/30
NS = YS/12
print("4.4亿日元等于%s(RMB),%s(日爽),%s(月爽),%s(年爽)" % (RMB, RS, YS, NS))
#RMB, RS, YS, NS分别为人民币,日爽,月爽, 年爽
一般情况下,使用%d和%s比较多。
而本题目中使用的数字是小数,如果使用的是整数,直接月爽和年爽都变成0了。
另外,我在文章:《如何批量给文件加位数相同且统一的序号——文件的批量命名》中也写到了格式化输出的程序。了解详细内容,可戳下面链接。
https://blog.csdn.net/a1456123a/article/details/116981534
5 关于格式化输出的一些说明:
(1). %字符:标记转换说明符的开始
(2). 转换标志:-表示左对齐;+表示在转换值之前要加上正负号;“”(空白字符)表示正数之前保留空格;0表示转换值若位数不够则用0填充
(3). 最小字段宽度:转换后的字符串至少应该具有该值指定的宽度。如果是*,则宽度会从值元组中读出。
(4). 点(.)后跟精度值:如果转换的是实数,精度值就表示出现在小数点后的位数。如果转换的是字符串,那么该数字就表示最大字段宽度。如果是*,那么精度将从元组中读出
(5).字符串格式化转换类型
转换类型 含义
d,i 带符号的十进制整数
o 不带符号的八进制
u 不带符号的十进制
x 不带符号的十六进制(小写)
X 不带符号的十六进制(大写)
e 科学计数法表示的浮点数(小写)
E 科学计数法表示的浮点数(大写)
f,F 十进制浮点数
g 如果指数大于-4或者小于精度值则和e相同,其他情况和f相同
G 如果指数大于-4或者小于精度值则和E相同,其他情况和F相同
C 单字符(接受整数或者单字符字符串)
r 字符串(使用repr转换任意python对象)
s 字符串(使用str转换任意python对象)
————————————————
版权声明:本文为CSDN博主「猪笨是念来过倒」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/liao392781/article/details/80579004/
python print如何在输出中插入变量相关推荐
- 《Python Cookbook 3rd》笔记(2.15):字符串中插入变量
字符串中插入变量 问题 你想创建一个内嵌变量的字符串,变量被它的值所表示的字符串替换掉. 解法 Python 并没有对在字符串中简单替换变量值提供直接的支持.但是通过使用字符串的 format() 方 ...
- Python·.·.print()函数格式化输出-超详解
Python·.·.print()函数格式化输出 print()函数格式为: print(objects, sep=' ', end='\n', file=sys.stdout) 文章目录 Pytho ...
- latex附录中放python代码_在Latex中插入Python代码
这里指的插入是指最终能在生成的pdf中显示高亮的Python代码. 在Latex中插入Python代码,需要一个第三发的宏包pythonhighlight: https://github.com/ol ...
- python特殊方法大全_python中星号变量的几种特殊用法
在Python中星号除了用于乘法数值运算和幂运算外,还有一种特殊的用法"在变量前添加单个星号或两个星号",实现多参数的传入或变量的拆解,本文将详细介绍"星号参数" ...
- Python学习笔记 Python概述 编码规范 输出与输入 变量 标识符
Python学习第一天 Python的概述 1.Python的优缺点 1.1 优点: 1.2 缺点: 2.Python的编码规范 3.注释 3.Python的输出与输入 4.Python中的变量 5. ...
- Python之向日志输出中添加上下文信息
除了传递给日志记录函数的参数(如msg)外,有时候我们还想在日志输出中包含一些额外的上下文信息.比如,在一个网络应用中,可能希望在日志中记录客户端的特定信息,如:远程客户端的IP地址和用户名.这里我们 ...
- C++ 开发中如何利用sql语句(insert语句)向数据库中插入变量
**问题描述:**在C/S开发过程中,当客户端向服务端发送接口(结构体)信息时,服务端需要将接收到的信息存入数据库,但是,常规insert语句只能存确定的值到数据,当客户端传入的值不确定,且为了保证代 ...
- HTML往herf超链接中插入变量
如何在<a herf=超链接中添加变量呢? 直接输入变量名或者给变量打上引号,都无济于事,超链接的路径根本不是变量所存的值! 困惑了一上午,在csdn上面有各种答案,什么编写script脚本实现 ...
- python print不换行输出_python中print如何不换行输出
让print()函数不换行 在Python中,print()函数默认是换行的.但是,在很多情况下,我们需要不换行的输出(比如在算法竞赛中).那么,在Python中如何做到这一点呢? 其实很简单.只要指 ...
- python print 如何加锁_python中给程序加锁之fcntl模块的使用
python 中给文件加锁--fcntl模块 import fcntl 打开一个文件 f = open('./test') ##当前目录下test文件要先存在,如果不存在会报错. 对该文件加密: fc ...
最新文章
- 第一阶段_第二部分_功能介绍
- 【Linux系统编程】进程间通信--共享内存
- P2082 区间覆盖(加强版)
- 作者:宋长青,山东农业大学教授,农业大数据研究中心常务副主任。
- 美团暑期日常实习前端面试
- 阿里巴巴公布了一份最新的AI成绩单
- JUnit的优点在于什么地方?和main方法有什么不同?
- shell脚本学习指南_Shell脚本初学者指南:基础知识
- android 反编译 签名,Android反编译及重签名命令
- 手写linux系统,在Linux操作系统中使用手写板
- 基于rietveld搭建CodeReview平台
- 会议摘要怎么写?这篇论文手把手教你
- 上海率先开放政府数据 医院床位车位信息均可查
- html如何调用flash插件,htmlflash播放器插件如何播放 网页播放器flash插件怎么解决...
- NEO主要技术社区成员大曝光
- 易捷行云EasyStack携手北联国芯,共筑鲲鹏生态
- Mouse_event()
- [WHS] Windows Home Server 官方中文站点上线
- 云计算的优点,主要包含哪几个方面?
- 2022危险化学品经营单位安全管理人员考试题库模拟考试平台操作