目录
一、拼接
1.1 加号拼接
2.2 join拼接
二、字符串格式化
2.1 使用%占位符来进行格式化
1、基本格式:
2、【例子】
2.2 format格式化
1、基本格式
2、精度与进制
3、千分位格式化
2.3 f 标志位 格式化
一、拼接
1.1 加号拼接
# 加号拼接
str1 = "i" + "am" + "feng"
str2 = "F" * 3
print(str1)
print(str2)
2.2 join拼接
# join
str3 = " ".join(["i", "am", "Feng"])
print(str3)
二、字符串格式化
2.1 使用%占位符来进行格式化
# join str3 = " ".join(["i", "am", "Feng"]) print(str3)
二、字符串格式化
2.1 使用%占位符来进行格式化
%s 表示字符串
%d 表示整型十进制
%f 表示浮点数
%x 表示十六进制数
%o 表示八进制数
%% 表示%本身
name = "feng"
age = 19
print("I am %s, my age is %s" % (name, age))
1、基本格式:
%[(name)][flags][width].[precision]typecode
- -(name):命名
- -flags:+,-,' '或0。
+表示整数前面填充“+”;
-表示左对齐;
' '为一个空格,表示在正数的左侧填充空格,从而与负数对齐
0表示用0填充
【注】falgs标志位为 + 或者 空格 时只对正数有用,表示和负数对齐。对字符串形式是没有用的
- -width:表示显示宽度
- -precision:表示小数点后面的精度
2、【例子】
print("第一个格式化:%010x" % 10)
print("第二个格式化:%-11x" % 10)
print("第三个格式化:%+x" % 10)
print("第四个格式化:%+s" % 10)
print("第五个格式化:% x" % 10)
# 会四舍五入
print("第6个格式化:%.4f" % 4.546456)
print("第7个格式化:%s %%" % ("sc"))
# 执行结果
第一个格式化:000000000a
第二个格式化:a
第三个格式化:+a
第四个格式化:10
第五个格式化: a
第6个格式化:4.5465
第7个格式化:sc %
2.2 format格式化
# format格式化
name = "feng"
age = 19
print(" format01 --> 姓名:{}, 年龄:{}".format(name, age))
# 1表示下标。name的下标为0,age的下标为1
print(" format01 --> 姓名:{1}, 年龄:{1}".format(name, age))
print(" format01 --> 姓名:{x}, 年龄:{y}".format(x=name, y=age))
# 执行结果
format01 --> 姓名:feng, 年龄:19
format01 --> 姓名:19, 年龄:19
format01 --> 姓名:feng, 年龄:19
1、基本格式
{变量:[填充字符][对齐方式][宽度][格式]}
< 左对齐
> 右对齐
^ 居中对齐
# {变量:[填充字符][对齐方式<^>][宽度][格式]}
# < 左对齐
# > 右对齐
# ^ 居中对齐
print("format03 --> {0:*>8}".format(10, 20))
print("format04 --> {num:@^10}".format(num=35))
# 执行结果
format03 --> ******10
format04 --> @@@@35@@@@
可以写表达式
feng = ['fzt', 19]
print('name is {0[0]} age is {0[1]}'.format(feng))
# 执行结果
name is fzt age is 19
2、精度与进制
# 精度与进制
print("format05 --> {1:*>15.2f}".format(1/3, 6.333333333))
print("format06 --> {0:x}".format(10))
# 执行结果
format05 --> ***********6.33
format06 --> a
3、千分位格式化
# 千分位格式化
print("format07 -->{0:,}".format(123456789))
# 执行结果
format07 -->123,456,789
2.3 f 标志位 格式化
# 千分位格式化
print("format07 -->{0:,}".format(123456789))
# 执行结果
format07 -->123,456,789
2.3 f 标志位 格式化
只有python3有,python2没有
# f 标志位 格式化
name = "feng"
age = 18
print(f"my name is {name:a^10}, my age is {age}")
# 执行结果
my name is aaafengaaa,my age is 18



