字符串拼接
加号拼接
str1="i"+"am"+"lilie"
str2="lilie"*3
print(str1)
print(str2)
输出:
iamlilie
lilielilielilie
join拼接
str3="".join(["i" ,"am" ,"lilie"])
print(str3)
输出:
iamlilie
字符串格式化
使用%占位符进行格式化
基本格式:%(name)[width].[precision]typecode
(name):命名
flags: +,-,' '或0。+表示右对齐;-表示左对齐;' '为一个空格,表示在正数的左侧填充一个空格,从而与负数对齐,0表示使用0填充。
width表示显示宽度
precision表示小数点后精度
格式化输出%
%s表示字符串
%d表示整型十进制
%f表示浮点数
%x表示十六进制数
%o表示八进制数
%%两个百分号表示百分号本身
print("第一个格式化:%010x" %10)
print("第二个格式化:%-11x" %10)
print("第三个格式化%:+x"%10)
print("第四个格式化:%010.3f"%3.1415926)
print("第五个格式化:%.3f"%3.1415926)
print("第六个格式化:%s %%"%("python"))
输出:
第一个格式化:000000000a
第二个格式化:a
第三个格式化:+a
第四个格式化:000003.142
第五个格式化:3.142
第六个格式化:python %
#flags标志位为+或者空格只对正数有用,表示和负数对形式是没有用的。
name="python"
age=18
print("i am %s,myage is %s"%(name, age)) #前面如果有一个就不用(),如果有两个及以上%占位符就需要用()括起来
输出:
i am python,myage is 18
format格式化
格式
{变量:[填充字符] [对齐方式<^>] [宽度] [格式]}
print("format01 --> {0:*>8}".format(10,20))
#0表示取第一个,:后面*表示用*填充>右对齐,填充八个字符
print("format02 --> {num:@^10}".format(num=35))
输出:
format01 --> ******10
format02 --> @@@@35@@@@
精度与进制
print("format03 --> {1:*>15.2f}".format(1/3,6.33333333))
print("format04 --> {0:x}".format(10))
#以十六进制数进行输出
print("format05 --> {0:,}".format(123456789))
#,表示千分位格式化
li=['hoho',18] #列表
print("name is {0[0]} age is {0[1]}".format(li))
输出:
format03 --> ***********6.33
format04 --> a
format05 --> 123,456,789
name is hoho age is 18
format格式化的三种形式
name="python"
age=18
print("format01 -->姓名:{},年龄:{}".format(name,age))
print("format02 -->姓名:{1},年龄:{0}".format(name,age))
#指定位置
print("format02 -->姓名:{x},年龄:{y}".format(x=name,y=age))
#指定用x,y来指代
输出:
format01 -->姓名:python,年龄:18
format02 -->姓名:18,年龄:python
format02 -->姓名:python,年龄:18
f 标志化 格式化(python2中没有)
name="python"
age=18
print(f"my name is {name:a^10},my age is {age}")
输出:
my name is aapythonaa,my age is 18