python格式化输出(python格式化字符串能是变量吗)

2022-08-27 12:04:17
摘要:  python格式化输出(python格式化字符串能是变量吗)...

1.字符串连接


>>> a = 'My name is ' + 'Suen'


>>> a


'My name is Suen'


>>> a = 'My name is %s'%'Suen'


>>> a


'My name is Suen'


>>> a = 'My name is %s, Age:%d'%('Suen', 18)


>>> a


'My name is Suen, Age:18'


>>> t = "i am %(name)s , age %(age)d" % {"name": "suen", "age": 18} # %(name)s 获取字典的name %(age)d 获取字典的age


>>> t


>>> 'i am suen , age 18'


>>> tp = "i am %(pp).2f " %{"pp": 23.45789}


>>> tp


'i am 23.46'


2.打印浮点数


>>> str1 = '浮点数:%.2f' % 199.1568 # %.2f 就是保留小数点右边两位(四舍五入)


>>> str1


'浮点数:199.16'


>>> str1 = '浮点数:%.3f' % 199.1568 # %.3f 就是保留小数点右边三位(四舍五入)


>>> str1


'浮点数:199.157'


3.字符串截取打印


>>> a = "从左往右打印3个字符:%.3s"%"abcdefg" # %.3s


>>> a


'从左往右打印3个字符:abc'


>>> a = "从左往右打印5个字符:%.5s"%"abcdefg" # %.5s


>>> a


'从左往右打印5个字符:abcde'


4.打印百分号


>>> str1 = '浮点数:%.3f%%' % 199.1568 # %%打印出来就是一个%


>>> str1


'浮点数:199.157%'


python字符串格式化符号:


符 号描述


%c


格式化字符及其ASCII码


%s


格式化字符串


%d


格式化整数


%u


格式化无符号整型


%o


格式化无符号八进制数


%x


格式化无符号十六进制数


%X


格式化无符号十六进制数(大写)


%f


格式化浮点数字,可指定小数点后的精度


%e


用科学计数法格式化浮点数


%E


作用同%e,用科学计数法格式化浮点数


%g


%f和%e的简写


%G


%f 和 %E 的简写


%p


用十六进制数格式化变量的地址


格式化操作符辅助指令:


符号功能


*


定义宽度或者小数点精度


-


用做左对齐


+


在正数前面显示加号( + )


在正数前面显示空格


#


在八进制数前面显示零('0'),在十六进制前面显示'0x'或者'0X'(取决于用的是'x'还是'X')


0


显示的数字前面填充'0'而不是默认的空格


%


'%%'输出一个单一的'%'


(var)


映射变量(字典参数)


m.n.


m 是显示的最小总宽度,n 是小数点后的位数(如果可用的话)


Python字符串运算符


下表实例变量a值为字符串 "Hello",b变量值为 "Python":


操作符描述实例


+


字符串连接


a + b 输出结果: HelloPython


*


重复输出字符串


a*2 输出结果:HelloHello


[]


通过索引获取字符串中字符


a[1] 输出结果 e


[ : ]


截取字符串中的一部分


a[1:4] 输出结果 ell


in


成员运算符 - 如果字符串中包含给定的字符返回 True


'H' in a 输出结果 1


not in


成员运算符 - 如果字符串中不包含给定的字符返回 True


'M' not in a 输出结果 1


r/R


原始字符串 - 原始字符串:所有的字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符。 原始字符串除在字符串的第一个引号前加上字母 r(可以大小写)以外,与普通字符串有着几乎完全相同的语法。


print(r'\n')print(R'\n')


%


格式字符串