Python 格式化输出字符串的方法(输出字符串+数字的几种方法)

作者:笃℃ 时间:2021-05-03 21:25:00 

Python 格式化输出字符串(输出字符串+数字的几种方法)

1. 介绍

字符串格式化输出是python非常重要的基础语法。

  • 格式化输出:内容按照一定格式要求进行输出。

2. 方法

2.1 使用占位符%输出

python2.6版本之前,使用%格式化字符串沿用的是C语言的输出格式。

使用说明:

  • 一般格式:print(“格式化字符串” % 变量);

  • 变量超过2个使用元组格式:print(“格式化字符串” % (变量1,变量2));

  • 使用%占位符表示字符串中变量位置,传入的值要与%占位符的变量一一对应;

  • 其中,%s表示字符串,%d表示整数,%f表示小数(默认保留小数点后6位,%.2f保留两位小数);

  • 存在格式化标志时,需要 %% 表示一个百分号。

name='xiaoming'
age=12
print("My name is %s, My age is %d" %(name,age))

'''print
My name is xiaoming, My age is 12
'''

2.2 format格式化

format是python2.6新增的一个格式化字符串的方法,相比%格式化方法有如下优点:

  • 单个参数可以多次输出,参数顺序可以不相同;

  • 填充方式十分灵活,对齐方式十分强大;

  • 官方推荐用的方式;

使用说明:

  • print(“…{索引}, … , {索引}, …”.format(值1, 值2))

  • #索引{}为空,默认按照顺序取值print(“…{key1}, … , {key2}, …”.format(key1=value,key2=value))

2.2.1 一般用法

name = 'xiaoyang'
age = 20
print('My name is {}, My age is {}'.format(name,age))
print('My name is {0}, My age is {1}'.format(name,age))
print('My name is {1}, My age is {0}'.format(name,age))
print('My name is {name}, My age is {age}'.format(name=name, age=age))

'''print
My name is xiaoyang, My age is 20
My name is xiaoyang, My age is 20
My name is 20, My age is xiaoyang
My name is xiaoyang, My age is 20
'''

2.2.2 进阶用法

  • 填写时要用冒号来开头,填写后,会按照其指定的规则来进行格式化。

#保留2位有效数字
print("{:.2f}".format(3.1415926))

#转成二进制
print('{0:b}'.format(16))

#转成八进制
print('{0:o}'.format(10))

#转成十六进制
print('{0:x}'.format(15))

'''print
3.14
10000
12
f
'''

2.2.2.1 填充对齐

# 先取到值,然后在冒号后设定填充格式:{索引:[填充字符][对齐方式][宽度]}

# *<20:左对齐,总共20个字符,不够的用*号填充
print('{0:*<20}'.format('hellopython'))

# *>20:右对齐,总共20个字符,不够的用*号填充
print('{0:*>20}'.format('hellopython'))

# *^20:居中显示,总共20个字符,不够的用*号填充
print('{0:*^20}'.format('hellopython'))

'''print
hellopython*********
*********hellopython
****hellopython*****
'''

2.2.2.2 位数与进制转换(注意不要忽略冒号)

#保留2位有效数字
print("{:.2f}".format(3.1415926))

#转成二进制
print('{0:b}'.format(16))

#转成八进制
print('{0:o}'.format(10))

#转成十六进制
print('{0:x}'.format(15))

'''print
3.14
10000
12
f
'''

2.3 f-string格式化

在Python 3.6中引入了 f-strings,不仅比str.format使用简单,而且效率也更高。

使用说明:

  • f-string是字符串前面加上 &ldquo;f&rdquo;,{}直接使用变量、表达式等。

name='xiaoyang'

age=20

#{}中直接使用变量

print(f'My name is {name}, My age is {age}')

#{}中运行表达式

print(f'{1+2+3}')

#调用Python内置函数

print(f'{name.upper()}')

#用lambda匿名函数:可以做复杂的数值计算

fun = lambda x : x+1

print(f'{fun(age)}')

'''print
My name is xiaoyang, My age is 20
6
XIAOYANG
'''

3. 参考资料

【1】https://blog.csdn.net/python1639er/article/details/112325519
【2】https://zhuanlan.zhihu.com/p/329972202

来源:https://blog.csdn.net/qq_51392112/article/details/129287507

标签:Python,格式化,输出,字符串
0
投稿

猜你喜欢

  • 利用xmlhttp和adodb.stream加缓存技术下载远程Web文

    2009-04-23 18:33:00
  • Oracle导出excel数据

    2023-07-18 17:44:14
  • Mysql数据库的完全备份

    2011-08-05 18:46:25
  • python实现实时监控文件的方法

    2021-08-18 21:17:06
  • Python协程asyncio异步编程笔记分享

    2022-03-05 22:23:31
  • SQL 判断给定日期值(或时间段)所在星期的星期一和星期天的日期

    2011-10-24 20:14:52
  • Utf-8和Gb2312乱码问题的终结

    2008-04-05 14:04:00
  • 一个不错网速测试代码

    2008-07-20 13:41:00
  • PHP引用符&的用法详细解析

    2023-10-17 17:25:53
  • OpenCV计算平均值cv::mean实例代码

    2023-06-19 10:26:02
  • Python 捕获代码中所有异常的方法

    2022-08-31 06:44:00
  • pytorch 网络参数 weight bias 初始化详解

    2023-08-12 07:43:57
  • Web开发与JavaScript编辑利器——Aptana Studio简介

    2008-05-05 13:32:00
  • ASP生成数字相加求和的BMP图片验证码

    2011-04-14 10:48:00
  • Python画图小案例之小雪人超详细源码注释

    2021-09-21 11:49:44
  • python绘制带有色块的折线图

    2022-08-11 07:01:58
  • python selenium自动化测试框架搭建的方法步骤

    2023-05-24 21:38:49
  • ajax完美实现两个网页 分页功能的实例代码

    2023-11-14 12:57:27
  • dl,dt,dd标签 VS 传统table实现数据列表

    2009-08-02 20:45:00
  • 在Pytorch中使用Mask R-CNN进行实例分割操作

    2023-05-18 21:41:22
  • asp之家 网络编程 m.aspxhome.com