# 1. + :字符串拼接
# 字符串1 +字符串2
print('hello'+' '+'Python')

# 注意: + 号两边要么都是数字，要么都是字符串。不能是一个数字和一个字符串
# print(12+'342')

# 2. * ：让字符串重复
# 字符串*整数
print('qwer'*(-2))
print('zxc'*2)

# 3. in 
# 字符串1 in 字符串2 ：判断字符串1是否在字符串2中--->在是True,不在是False
result = 'aa' in 'abaaac'
print(result)

# 4. not in
# 字符串1 not in 字符串2 ：判断字符串1是否不在字符串2中--->不在是True,在是False
result = 'aa'not in 'abaaac'
print(result)

# 5.格式字符串
# 格式：'占位符1占位符2%s'%(值1，值2)
print('四川%s科华区'%'成都')
nu = 'alienware%skiller%s'  %('asus' ,'BWM')
print(nu)
"""
百分号方式

 格式：%[(name)][flags][width].[precision]typecode

(name)        可选，用于选择指定的key
flags         可选，可供选择的值有:
 1. +      右对齐；正数前加正好，负数前加负号；
 2. -      左对齐；正数前无符号，负数前加负号；
 3. 空格   右对齐；正数前加空格，负数前加负号；
 4. 0      右对齐；正数前无符号，负数前加负号；用0填充空白处
width         可选，占有宽度
.precision    可选，小数点后保留的位数
typecode      必选
 s，字符串占位符（格式符）
 r，获取传入对象的__repr__方法的返回值，并将其格式化到指定位置
 c，长度是1的字符串占位符（字符串）----可以给一个字符了，也可以给字符的编码值
 o，将整数转换成 八  进制表示，并将其格式化到指定位置
 x，将整数转换成十六进制表示，并将其格式化到指定位置
 d，将整数、浮点数转换成 十 进制表示，并将其格式化到指定位置
 e，将整数、浮点数转换成科学计数法，并将其格式化到指定位置（小写e）
 E，将整数、浮点数转换成科学计数法，并将其格式化到指定位置（大写E）
 f，将整数、浮点数转换成浮点数表示，并将其格式化到指定位置（默认保留小数点后6位）
 F，同上
 g，自动调整将整数、浮点数转换成 浮点型或科学计数法表示（超过6位数用科学计数法），并将其格式化到指定位置（如果是科学计数则是e；）
 G，自动调整将整数、浮点数转换成 浮点型或科学计数法表示（超过6位数用科学计数法），并将其格式化到指定位置（如果是科学计数则是E；）
 %，当字符串中存在格式化标志时，需要用 %%表示一个百分号
注：Python中百分号格式化是不存在自动将整数转换成二进制表示的方式

常用格式化：

tpl = "i am %s" % "alex"
 
tpl = "i am %s age %d" % ("alex", 18)
 
tpl = "i am %(name)s age %(age)d" % {"name": "alex", "age": 18}
 
tpl = "percent %.2f" % 99.97623
 
tpl = "i am %(pp).2f" % {"pp": 123.425556, }
 
tpl = "i am %.2f %%" % {"pp": 123.425556, }
"""
#  %。nf:使用n值限制小数点后面的小数的位数（默认6位小数）
str2 = '金额：%.2f元'%2321
print(str2)
print('23%d %%'%233)
print(1234)

# 如果后面没有加%,那么这个字符串只是一个普通的字符串
str3 = '金额：%.2f元'
print(str3)

# 6.格式化输出
name = '蔑天骸'
age = 33333
print('%s已经%d岁了%%'%(name,age))
print('科学计数27920000为%.3e'%27920000)
