python中使用%与.format格式化文本方法解析
作者:恩恩先生 发布时间:2023-09-21 18:02:11
标签:python,format,格式化
初学python,看来零零碎碎的格式化文本的方法,总结一下python中格式化文本的方法。使用不当的地欢迎指出谢谢。
1、首先看使用%格式化文本
常见的占位符:
常见的占位符有:
%d 整数
%f 浮点数
%s 字符串
%x 十六进制整数
使用方法:
>>> 'Hello, %s' % 'world'
'Hello, world'
>>> 'Hi, %s, you have $%d.' % ('Michael', 1000000)
'Hi, Michael, you have $1000000.'
使用的时候不知道写什么的地方直接使用 %s 进行代替,语句的末尾加上 %() 括号里面直接填写内容即可(字符串加上引号,中间用“,”分割),如果只有一个%?,括号可以省略。
高级一点的用法:
格式化整数指定是否补零:
首先看代码:
>>> '%d-%d' % (3, 23)
'3-23'
>>> '%2d-%2d' % (3, 23)
' 3-23'
>>> '%3d-%3d' % (3, 23)
' 3- 23'
>>> '%4d-%4d' % (3, 23)
' 3- 23'
>>> '%01d-%01d' % (3, 23)
'3-23'
>>> '%02d-%02d' % (3, 23)
'03-23'
>>> '%03d-%03d' % (3, 23)
'003-023'
>>> '%04d-%04d' % (3, 23)
'0003-0023'
>>>
可以看得出来,d前面的数字用来指定占位符,表示被格式化的数值占用的位置数量(字节还是什么不知道这样的表述是否正确),指定之后比如%3d,代表这个整数要占用3个位置,前面如果有0代表占用的地方使用0补齐,没有就使用空格补齐。指定的空间位置小于实际的数字大小,以实际占用的位置大小为准。
指定小数的位数:
>>> '%.f' % 3.1415926'3'
>>> '%.1f' % 3.1415926'3.1'
>>> '%.2f' % 3.1415926'3.14'
>>> '%.3f' % 3.1415926'3.142'
>>>
可以看出.后面的数字用来表示保留的小数点的位数,".1"代表保留小数点后面一位小数。
如果不确定应该用什么,%s永远起作用,它会把任何数据类型转换为字符串:
>>> 'Age: %s. Gender: %s' % (25, True)
'Age: 25. Gender: True'
有些时候,字符串里面的%是一个普通字符怎么办?这个时候就需要转义,用%%来表示一个%:
>>> 'growth rate: %d %%' % 7
'growth rate: 7 %'
尝试使用其他方法对%进行转义,但是好像没有用,有什么其他方法欢迎评论。
2、使用format 方法进行格式化
代码演示:
age = 25
name = 'Swaroop'
print('{0} is {1} years old'.format(name, age))
print('Why is {0} playing with that python?'.format(name))
位置使用{1}按照使用的顺序写好,后面格式使用 .format() 写好对应的参数即可。
输出结果:
Swaroop is 25 years old
Why is Swaroop playing with that python?
其实也可以使用第一种方法实现:
age = 25
name = 'Swaroop'
print('%s is %s years old'%(name, age))
print('Why is %s playing with that python?'%(name))
输出
Swaroop is 25 years old
Why is Swaroop playing with that python?
实现的结果都是一样的。
来源:http://www.cnblogs.com/engeng/p/6605936.html


猜你喜欢
- 之前做课设的时候舍友遇到了需要生成500w量级车牌号的问题,于是我便写了一个随机生成车牌号的程序,希望各位采纳。注:Python实现impo
- Python中的ctypes模块可能是Python调用C方法中最简单的一种。ctypes模块提供了和C语言兼容的数据类型和函数来加载dll文
- 前言extends关键字在TS编程中出现的频率挺高的,而且不同场景下代表的含义不一样,特此总结一下:表示继承/拓展的含义表示约束的含义表示分
- 用法示例:import random# 1)随机小数print(random.random()) # 获取大于0且小于1 之间的小数 &nb
- python和C++一样,支持多继承。概念虽然容易,但是困难的工作是如果子类调用一个自身没有定义的属性,它是按照何种顺序去到父类寻找呢,尤其
- 公司服务器的mysql和redis连接都需要有跳板机,网上有很多python ssh远程连接mysql的,那天我研究了下,利用sshtunn
- 反射什么是反射? - 反射主要是指程序可以访问、检测和修改它本身状态或行为的一种能力(自省) 面向对象中的反射&nb
- 本文实例讲述了Python疯狂填词程序实现方法。分享给大家供大家参考,具体如下:题目如下:创建一个疯狂填词程序,它将读入文件,并让用户在该文
- 最近在使用Python开发系统,需连接mysql数据库,我用的是Python3连接MySQL8.0,其中老是报错以下问题:网上给了各种各样的
- 你可能正建立自己在网上的家-WEB页,又或者它已经被你安置在网络某一角里。无论出于什么目的,你都希望有
- 本文实例讲述了Python中函数及默认参数的定义与调用操作。分享给大家供大家参考,具体如下:#coding=utf8''
- 从微信小程序官方发布的公告中我们可获知:小程序体验版、开发版调用 wx.getUserInfo 接口,将无法弹出授权询问框,默认调用失败,需
- 前言不管是做开发还是做过网站的朋友们,应该对于User Agent一点都不陌生,User Agent 中文名为用户代理,简称 UA,它是一个
- 本文实例为大家分享了mysql 5.7.13 winx64安装配置方法图文教程,供大家参考,具体内容如下(1) 下载MySQL程序,您可以从
- Python自动化办公之删除重复的视频文件获取所有文件路径import osimport filecmpfile_list=[]new_li
- 能坚持全部做完的都是高手直入主题建库建表插入数据代码直接按顺序复制就可以-- 建库CREATE DATABASE `emp`;-- 打开库U
- pyd文件生成安装easycython库pip install easycythontest.pydef test(): pri
- 这里说的“相对路径”是相对于“主调文件”所在的文件夹。#include file #include file后面跟的是文件的“相对路径”,不
- 对于金额的显示,大多情况下需要保留两位小数,比如下面的(表格采用 element-ui):在vue.js中,对文本的处理通常是通过设置一系列
- ah!其实没有标题说的那么严重!不过下面可是我们开发产品初期的一些血淋淋的案例,更多的安全威胁可以看看北北同学的《python hack》P