格式化字符串
- 拼接字符串
- 参数传递
- 占位符
- 格式化
1. 拼接字符串
- 注意:仅能拼接一样的类型。
a = 'hi, '
b = 'Sam'
s = a + b
print(s)
>>> 'hi, Sam'
2. 参数传递
-
print()函数,传入多个参数
a = 'hello '
b = 'world!'
print(a,b)
>>> 'hello world!'
3. 占位符
使用 %
%s任意的字符%f任意的消暑%d任意的整数例1: 格式化字符串
a = 'I love %s'
a % '大鸡腿'
>>> 'I love 大鸡腿'
- 例2:多个格式化字符串
s = '%s, %s' % ('hello', 'world')
print(s)
>>> 'hello world'
格式化
- 使用
f-string
在{}放入参数名称,并且定义
s1 = '钢铁侠'
s2 = '葫芦娃'
print(f'hello {s1}, {s2}')
>>> 'hello 钢铁侠, 葫芦娃'
- 使用
.format()
其中{}中可以添加数字。
添加的数据将从format()中,从0开始,获取第n个数据
- 例1:
s = 'I love {}'
a = s.format('you')
print(a)
>>> 'I love you'
- 例2:
{0}即为format()中第一个传入的数据'honey'
{1}即为format()中第二个传入的数据'you'
s = 'I love {1}, {0}'
a = s.format('honey','you')
print(a)
>>> 'I love you, honey'
字符串相关的函数
-
.len()返回 字符串长度 -
.max()返回 最大值 (比较字符串所对应的ascii值) -
.min()返回 最小值 (比较字符串所对应的ascii值) -
ord()返回 ascii 值 -
.split()根据特定符号分割
例:
s = 'I love you'
res = s.split(' ') # 根据空格分割
print(res)
>>> ['I', 'love', 'you']
-
.join()拼接(连接)字符串-
a.join(b)代表使用a来连接b的每个字符
-
a = '-'
b = 'xxxx'
print(a.join(b))
>>> 'x-x-x-x'
-
.strip()去除所有空格 -
.lstrip()去除左边空格 -
.rstrip()去除右边空格
test_str = ' xxx '
test_str.strip()
>>> 'xxx'
test_str.lstrip()
>>> 'xxx '
test_str.rstrip()
>>> ' x'
-
.upper()全部转化为大写 -
.lower()全部转化为小写 -
.islower()是否全部小写(1=是;0=否) -
.isupper()是否全部大写(1=是;0=否)
'Python'.upper()
>>> 'PYTHON'
'Python'.lower()
>>> 'python'
'python'.islower()
>>> True
'Python'.isupper()
>>> False
运算符
算术运算符
-
+加法
'hello ' + 'world'
>>> 'hello world'
1 + 1
>>> 2
-
-减法
5 - True
>>> 4
备注:True = 1
-
*乘法
'a' * 2
>>> 'aa'
-
/除法 :返回浮点(float)类型
3/2
>>> 1.5
-
//除法取整:返回整数部分
7//3
>>> 2
-
%取模(余数)
7 % 3
>>> 1
-
**幂次运算
2**3
>>> 8
4 ** 0.5
>>> 2
赋值运算符
-
=将右侧的值,赋值给左边的值 -
+=:x+=y相当于x = x +y的简写 -
-=:x-=y相当于x = x -y 的简写 -
*=:x*=y相当于x = x *y的简写 -
/=:x/=y相当于x = x / y的简写
x = 5
x += 3
print(x)
>>> 8
比较运算符
-
>比较左侧值的输入,是否大于右侧值 -
<比较左侧值的输入,是否小于右侧值 -
>=比较左侧值的输入,是否大于等于右侧值 -
<=比较左侧值的输入,是否小于等于右侧值
a = 1
b = 2
a > b
>>> False
- 字符串的比较,比较的是字符之间的
ascii码值- 出现多个字符时,先比较第一个字符的大小
'2' > '11'
>>> True
'a' > 'ab'
>>> False
'ab'>'aa'
>>> True
2的ascii码=50,1的ascii码=49
所以比较'2','11'的大小时,优先比较'2'跟'1'的ascii码值
-
==比较两个对象的值是否相等 -
!=比较两个对象的值是否不相等 -
is比较两个对象是否是同一个对象,比较的是对象的id -
is not比较两个对象是否是不同对象。比较的是对象的id
'a' == 'a'
>>> True
0 == False
>>> True
0 is False
>>> False
'a' is 'a'
>>> True
'abc' is not 'a'
>>> True
逻辑运算符
-
not返回boolean,对not的右侧对象做非运算- 对于非布尔值,会将其先转化成布尔值,再进行取反操作
例:
- 对于非布尔值,会将其先转化成布尔值,再进行取反操作
a = 123
a = not a
print(a)
>>> False
not False
>>> True
a = None
a = not a
print(a)
>>> True
-
and:与运算,是否同时成立
True and True
>>> True
True and False
>>> False
False and False
>>> True
-
or:或运算,是否其中一个成立
True or True
>>> True
True or False
>>> True
False or False
>>> False