格式化字符串
- 拼接字符串
- 参数传递
- 占位符
- 格式化
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
比较两个对象是否是同一个对象,比较的是对象的idis 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