python a和b字符串和占位符输出,Python实现字符串格式化输出的方法详解

本文实例讲述了Python实现字符串格式化输出的方法。分享给大家供大家参考,具体如下:

python属于强类型的语言,如果像java一样操作字符串和数字的“+”时,会出现TypeError。而python的格式化方法有多种,比如使用占位符,使用format,或者是自定义模版等等。这里介绍了其中的几种方法

下面这个例子很好的说明了python属于强类型语言:

所以,需要进行转换输出。

常用占位符

符号

意思

%s

字符串

%d / %i

十进制整数

%u

过时的十进制使用方法

%o

八进制整数

%x / %X

十六进制整数

%f / %F

浮点数

%e / %E

科学技术法

%%

输出%

使用方式一

直接使用占位符

为%d指定长度,%05d,如果数字小于5位会在左边补0,大于指定长度时不受此影响

使用方式二

使用字典

print 'Python is %(args)s, %(args)s, %(args)s beautiful' % {'args': 'very'} #Python is very, very, very beautiful

当拼接有许多重复元素时,使用这种方式比较好

使用方式三

使用format的方式。在2.6之后的版本支持。

通过参数名字格式化

使用元组

进制

为数字加点号

百分比表示

时间格式化

另外也可以使用strftime来格式化时间

使用方式四

自定义模版

这里有substitue和safe_substitute两种属性

如果不使用safe_substitute,参数不全时会出现KeyError异常。

希望本文所述对大家Python程序设计有所帮助。

原文链接:http://blog.tdoly.com/coding/python-string-format/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python 中,字符串格式化可以使用字符串的 `format()` 方法或 `%` 运算符来完成。以下是使用 `%` 运算符的字符串格式化示例: ### 字符串格式化示例 ```python # 格式化整数 num = 123 print("整数:%d" % num) # 格式化浮点数 fnum = 3.1415926 print("浮点数:%.2f" % fnum) # 格式化字符串 name = "John" print("字符串:%s" % name) # 格式化多个值 age = 30 print("姓名:%s,年龄:%d" % (name, age)) ``` 输出: ``` 整数:123 浮点数:3.14 字符串:John 姓名:John,年龄:30 ``` `%` 运算符支持的格式化字符如下: | 格式化字符 | 描述 | | --- | --- | | `%d` | 整数 | | `%f` | 浮点数 | | `%s` | 字符串 | | `%c` | 字符 | | `%o` | 八进制数 | | `%x` | 十六进制数 | | `%e` | 科学计数法 | | `%g` | 根据值的大小决定使用 `%f` 或 `%e` | 除了上述格式化字符,还可以使用如下格式化选项: | 选项 | 描述 | | --- | --- | | `+` | 在正数前面显示加号 | | `-` | 左对齐 | | `0` | 填充0而不是默认的空格 | | `#` | 为八进制数或十六进制数添加前缀 | | `.` | 精度或字符串最大长度 | 示例: ```python # 格式化选项示例 print("整数:%+d" % num) # 整数:+123 print("浮点数:%0.2f" % fnum) # 浮点数:3.14 print("八进制数:%#o" % num) # 八进制数:0o173 print("十六进制数:%#x" % num) # 十六进制数:0x7b print("科学计数法:%e" % fnum) # 科学计数法:3.141593e+00 print("字符串最大长度:%.3s" % name) # 字符串最大长度:Joh ``` 输出: ``` 整数:+123 浮点数:3.14 八进制数:0o173 十六进制数:0x7b 科学计数法:3.141593e+00 字符串最大长度:Joh ``` 除了 `%` 运算符,还可以使用字符串的 `format()` 方法进行字符串格式化。`format()` 方法使用花括号 `{}` 作为占位符,可以使用位置参数或关键字参数指定要格式化的值。 ### 使用 `format()` 方法进行字符串格式化示例 ```python # 使用位置参数进行格式化 print("姓名:{},年龄:{}".format(name, age)) # 使用关键字参数进行格式化 print("姓名:{n},年龄:{a}".format(n=name, a=age)) # 使用数字索引进行格式化 print("姓名:{0},年龄:{1}".format(name, age)) # 使用字典进行格式化 person = {"name": "Mike", "age": 25} print("姓名:{name},年龄:{age}".format(**person)) ``` 输出: ``` 姓名:John,年龄:30 姓名:John,年龄:30 姓名:John,年龄:30 姓名:Mike,年龄:25 ``` `format()` 方法支持的占位符与 `%` 运算符相同,但使用方式不同。示例: ```python # 使用 format() 方法进行格式化 print("整数:{}".format(num)) print("浮点数:{:.2f}".format(fnum)) print("字符串:{}".format(name)) ``` 输出: ``` 整数:123 浮点数:3.14 字符串:John ``` 综上所述,以上是 Python字符串格式化的详解
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值