Python 如何字符串格式化使用_占位符%_详解码404

本文详细介绍了Python中基于占位符%的字符串格式化方法,包括常见格式符如%s、%d、%f等,以及对齐方式如^、>、<。通过示例展示了如何设置输出宽度、精度,并通过字典传入不同数据类型的值进行格式化。此外,还涉及到了不同进制的输出以及宽度和精度的设置。

简介


本文中介绍的字符串一个非常重要的知识点:字符串格式化输出。
格式化怎么理解?简答来说:就是让字符串按照我们设定的格式来输出,达到我们想要的结果。主要是有4种方式:

  • %:基于占位符的格式化
  • format()函数的格式化:重点掌握
  • f-string格式化:重点掌握
  • 字符串模板函数
占位符%

常见格式符


格式化符号其实是为真实的值预留出一个空位,而且还可以控制显示的格式。格式符包含一个类型码,用来显示不同的数据类型,比如字符串、二进制、指数等。常见的不同的占位符如下:

  • %s: 字符串 (采用str()的显示),常用
  • %r: 字符串 (采用repr()的显示)
  • %c: 单个字符,格式化字符及其ASCII码
  • %b: 二进制整数
  • %u: 格式化无符号整数,常用
  • %d: 格式化十进制整数,常用
  • %i: 十进制整数
  • %o: 八进制整数
  • %x: 十六进制整数
  • %g: 指数(e)或浮点数%f (根据显示长度)
  • %G: 指数(E)或浮点数%F (根据显示长度)
  • %e: 指数 (基底写为e),用科学计数法格式化浮点数
  • %E: 指数 (基底写为E),用法同%e
  • %f: 浮点数,格式化浮点数字,可以指定小数点后面的精度,常用
  • %F: 浮点数,与%f相同
  • %%: 字符“%”,用来显示百分号%

对齐问题


关于对齐问题:

1. ^:居中对齐
2. >:右对齐
3. <:左对齐
4. +、-:显示正负号

语法形式


常用的语法形式为:%[(name)][flags][width].[precision] typecode

  • (name):参数的名称,可以省略;如果使用必须加上()
  • flags:对齐标志位;可以是+、-、“”、0;+右对齐,-左对齐,""填充一个空格;0表示左侧使用0填充
  • width:显示的宽度
  • precision:小数点后的精度

多种类型连用


print("%9.3f" % 2.3)  
2.300  #  前面4个空格
  • 第一个 % 后面的内容为显示的格式说明,9 为显示宽度,3 为小数点位数,f 表示输出为浮点数类型
  • 第二个 % 后面为显示的内容来源,输出结果默认为右对齐,2.300 长度为 5,故前面有4个空格
print("%+9.3f" % 2.3)  # 带上+符号输出,9表示宽度,3表示小数位
   +2.300
print("%-9.3f" % 2.3)  # -表示左对齐输出
2.300
print("%-9.3f" % -2.3)  
-2.300
# 我们显示声明3个变量

name = "Yule Cottage"  # 字符串类型
age = 25  # 整数类型
height = 1.76   # 浮点数类型
# 1、浮点数默认是6位小数
# 2、%f和%F相同

print("我是:%s,年龄: %d,身高是:%f" % (name,age,height))
我是:Yule Cottage,年龄: 25,身高是:1.760000
# 指定浮点数的小数位

print("我是:%s,年龄: %d,身高是:%.3f" % (name,age,height))
我是:Yule Cottage,年龄: 25,身高是:1.760

下面的代码是通过字典对的形式来传入不同的数据类型,字典(后面会介绍python的字典)的值就是待格式的内容。

需要注意的是name、age、height必须写在%号的后面

print("我是:%(name)s,年龄: %(age)d,身高是:%(height).3f" % {"name":name,"age":age,"height":height})
我是:Yule Cottage,年龄: 25,身高是:1.760

输出不同进制


print("八进制:%o,十进制:%i,十六进制:%x" %(age,age,age))
八进制:31,十进制:25,十六进制:19
# print("二进制:%b" %(age))   # 二进制不能使用
bin(age)  # 通过bin函数查看
'0b11001'

输出的宽度、精度等设置


number = 1.23456789

# 宽度为10,保留小数点后4位,默认是右对齐
print("%10.4f" % number)  
    1.2346
print("%-10.4f" % number)  # -符号表示左对齐,显示4位小数
1.2346
# 右对齐,保留10位小数,不足的用0补齐

print("%10.10f" % number)  
1.2345678900
print("%-10.8f" % number)  # 左对齐,保留8位小数
1.23456789
# 左对齐,保留7位小数,会自动地进行四舍五入

print("%-10.7f" % number)  
1.2345679

下面是针对字符串的宽度等输出设置:

name
'Yule Cottage'
print("%.10s" % name) # 9个字母+一个空格:左对齐
Yule Cotta
print("%.15s" % name) # 如果位数不够,直接全部输出
Yule Cottage
print("%10.6s" % name) # 右对齐,取出6个字符
    Yule C

解释:总长度为10,前面4个空格,加上4+一个空格+C

CSDN_码404_Python 如何字符串格式化使用_占位符%_详解码404
https://www.code404.icu/1078.html

精仿hao123网址导航系统简介(切记上传后先到后台全站生成下html静态页面): 1.本程序为asp+access数据库,所有代开源,无绑定域名等限制,直接把源放在win系统服务器即可。 2.常规管理–网站基本参数(可视模式) 进去可以进行修改编辑,可视化操作更方便更简单。 3.静态页面管理-静态页面生成-一键生成所有静态页面,后台地址/admin/目录,用户名admin,密123456 源特色: 1、流量来路交换链功能! 更加准确的加密算法记录来路,有站点点入即可在有效位置推荐站长站点,非常实用的流量交换功能。 2、网址加色、推荐功能! 自己可以随心所欲的设置某个站点的颜色,或设置站与站之间的排序,适合新手傻瓜操作,这样可以使收费网址靠前,更好的进行双赢。 3、宣传得积分、积分兑换奖品功能! 结合WEB2.0的元素,注册用户可以通过宣传来获取积分,积分可以换取相应的奖品,大大增加网站的粘合度,从而更加有利于网站的推广服务! 4、历史记录、在线网络收藏夹功能! 对已访问过的网址会本地自动记录,可以在线收藏自己爱好的网址,分类收藏,排序收藏等一系列完整的网络收藏夹功能。 5、模板标签化 程序与模板分离! 前台模版与后台程序完全分离,简单实用的标签调用,可以自己独立制作模板,非常简单实用的标签,子类可以单独设置模板,制作出属于自己的个性网址导航。 6、后台集成各大搜索引擎联盟账号! 百度、淘宝、迅雷、搜狗、谷歌、狗狗、当当、卓越等联盟帐号的集成,增加隐性的收入,你只要去申请一个他们联盟的帐号,然后在后台添加帐号即可,马上用户在使用您的网站搜索时即可产生效益! 详细说明: 1、首页风格图:,支持换肤 2、图片广告后台可自行设置10个,用户打开前台时会自动轮播 3、后台可自行设置默认颜色风格,换肤功能中的皮肤可后台一键升级,以满足不同节假日换肤之用 4、后台可自行添加新闻、军事、体育、八卦新闻,默认会自动更新 5、前台支持多搜索引擎切换,后台可设置默认搜索引擎 6、后台可设置所有网址的小图标,前台会自动兼容小图标 7、前台已经内置多个内页的子频道,比如: 新闻频道,影视频道, 电视剧频道, 购物频道, 团购频道, 笑话频道, 小游戏频道, 彩票频道, 快递频道,手机频道, 旅游频道, 军事频道, 股票频道, 音乐频道, 小说频道, 天气频道, 违章查询等频道,并在不断增加中,上线后,还将不断完善! 8、前台所有网址,所有网址类别,所有工具箱,菜单都可以后台自行修改 9、支持QQ登陆,支持ucenter账号互通 10、支持积分系统,包括下线推广,绑定首页积分,注册,登陆积分 11、支持收藏夹,网址观看历史记录功能 12、支持流量交互功。后台自己设置流量按几比几返还,集成流量交互系统,让你的导航导航程序与众不同,点入大于点出,网站自动套红,防作弊,三次验证,精确统计能 13、支持网址批量入库功能。 14、左则导航条 15、地区名站16、360搜索联盟
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值