欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

学习笔记004-字符串、运算符、逻辑运算符等等

程序员文章站 2022-04-16 16:17:13
Python学习004一、格式化字符串1、字符串的拼串 ,拼接 “+”s = 'hello'print('s = ' + s)返回结果:s = hello2、参数的传递s ='abc','nba')print('s = ' , s)返回结果:s = 'abc','nba'3、占位符%s 字符串占位%f 浮点数占位%d 整数占位#1、print('s = %s'%'hello')返回结果:s = hello#2、s = 's = %s ,s2 = %s '%('hel...

Python学习004

一、格式化字符串

1、字符串的拼串 ,拼接 “+”

s = 'hello'
print('s = ' + s)
返回结果:s = hello

2、参数的传递

s ='abc','nba')
print('s = ' , s)
返回结果:s = 'abc','nba'

3、占位符

%s 字符串占位
%f 浮点数占位
%d 整数占位

#1、
print('s = %s'%'hello')
返回结果:s = hello
#2、
s = 's = %s ,s2 = %s '%('hello','Python')
print(s)
返回结果:s = hello ,s2 = Python 

4、格式化字符串 : f + str({变量1},{变量2}…) r + str

f’{变量}’ / str.format

f’{变量}’、str.format,方法1:替换的字符有变量就用此方法

s1 = '钢铁侠'
s2 = '蜘蛛侠'
r = f'hello {s1},{s2}'
print(r)
返回结果:hello 钢铁侠,蜘蛛侠

参数传递,方法2:替换的字符没有变量可以用此方法

s = 'i like {}'
a = s.format('python')
print(a)
返回结果:i like python

参数传递,方法3:替换的字符没有变量可以用此方法

s = 'i like {}, {}'
a = s.format('python','java')
print(a)
返回结果:i like python, java

练习:1

d = 'zhangsan %d sui. %s suishu gengda'%(22,'linsi')
print(d)
返回结果:zhangsan 22 sui. linsi suishu gengda

练习:2

d = 'zhangsan {0} sui. {1} suishu gengda'
r = d.format(22,'lisi')
print(r)
返回结果:zhangsan 22 sui. lisi suishu gengda

练习:3

age = 22
name = 'lisi'
w = f'zhangsan {age} sui. {name} suishu gengda'
print(w)
返回结果:zhangsan 22 sui. lisi suishu gengda

二、字符串的其他操作

1、其他操作

len()–获取字符串的长度

print(len('iLoveyou'))
返回结果:8

max()–取的是这个字符所对应的ascii的最大值

print(max(100,50,60,85))
返回结果:100

min()–取的是这个字符所对应的ascii的最小值

print(min(100,50,60,85))
返回结果:50

in()–判断一个字符串是否在这个字符串当中,如果在就返回True,如果不在就返回Fasle

print('a' in 'a')
print('j' in 'c')
返回结果:True
返回结果:False

ord()–查找字符所对应的ascii值

print(ord('a'))
返回结果:97   #(ascii值)

split()–分割字符串,分割之后会把结果返回到一个列表里

s = 'I love china'
r = s.split(' ')
print(r)
返回结果:['I', 'love', 'china']

s1 = 'www.baidu.com'
r = s1.split('.')
print(r)
返回结果:['www', 'baidu', 'com']

join()-- 拼接字符串 --str.join(seq) str–> 拼接的方式 seq --> 序列的内容

a = 'abc'
r = '-'.join(a)
print(r)
返回结果:a-b-c

2、去空格

s.strip()–左右两边去空格

s = '  python  '
r = s.strip()
print(r)
返回结果:'python'

s.lstrip()–去左边空格

s = '  python  '
r = s.lstrip()
print(r)
返回结果:'python  '

s.rstrip()–去右边空格

s = '  python  '
r = s.rstrip()
print(r)
返回结果:'  python'

3、字符串大小写

s.upper()–全部大写

a='i love china'
b=a.upper()
print(b)
返回结果:I LOVE CHINA

s.lower()–全部小写

a='I LOVE CHINA'
b=a.lower()
print(b)
返回结果:i love china

s.isupper()–判断是不是大写

a='I LOVE CHINA'
b=a.isupper()
print(b)
返回结果:True
a='i love china'
b=a.isupper()
print(b)
返回结果:Fales

s.islower()–判断是不是小写

a='i love china'
b=a.islower()
print(b)
返回结果:True
a='i love china'
b=a.islower()
print(b)
返回结果:Fales

二、运算符

运算符的概念

运算符用于执行程序代码运算,会针对一个以上操作数项目来进行运算。

1、算术运算符

加法运算

x = 1 + 2
x = 1.0 + 2
x = 'python' + 'java' #拼串

减法运算

x = 5-2
x = 2-5
x = 'python'-'hon' #TypeError: unsupported operand type(s) for -: 'str' and 'str' 
不适用于字符串

乘法运算

x = 2 * 'a'
x = 2 * 5
x = 5 * 2
x = 'a'*'b' #TypeError: can't multiply sequence by non-int of type 'str'
不适用于字符串

除法运算
整数或者浮点数做除法运算总会返回浮点类型

x = 6 / 2 
x = 6 / 0 #ZeroDivisionError: division by zero  除数不能为0
x = 5 / 2

取整

x = 7 // 3  

取模(取余)

x = 7 % 3

幂运算(次方)

x = 2**3 
x = 25 ** 0.5

2、赋值运算符

x += 3 # 等价于x = x + 3
x -= 3 # 等价于x = x - 3
x *= 3 # 等价于x = x 9 3
x /= 3 # 等价于x = x / 3
x //= 3 # 等价于x = x // 3
x **= 3 # 等价于x = x ** 3
x %= 3 # 等价于x = x % 3

3、比较运算符

主要是比较2个值之间的关系,总会返回一个布尔类型,关系成立返回True,关系不成立返回False
如果出现多个字符的情况下,那么比较方式是对位比较。
如果对位比较出的结果则直接返回结果,否则去下一位对位比较,直到比较出结果为止

运算符 说明
> ⽐较左侧值是否⼤于右侧值
>= ⽐较左侧的值是否⼤于或等于右侧的值
< ⽐较左侧值是否⼩于右侧值
<= ⽐较左侧的值是否⼩于或等于右侧的值
== 比较两个对象的值是否相等
!= 比较两个对象的值是否不相等
is 比较两个对象是否是同一个对象,比较的是对象的id
is not 比较两个对象是否不是同一个对象,比较的是对象的id

4、逻辑运算符

逻辑运算符主要用来做一些逻辑判断

and 逻辑与

符号两侧的值进行与运算
只有再符号两则的值都为True时,才会返回True,只要有一个False就返回False
与运算是找False的,如果第⼀个值为False,则不再看第⼆个值

True and True  返回结果:True
False and True  返回结果:False
True and False  返回结果:False
False and False 返回结果:False
or 逻辑或

符号两侧的值进行或运算
或运算是找True的,如果第一个值为True,则不再看第二个值,
True变False,False变True

True or True   返回结果:True
False or True   返回结果:True
True or False   返回结果:True
False or False  返回结果:False
not 逻辑非

对符号右侧的值进行非运算
对于非布尔值,非运算会先将其转换为布尔值,然后再取反操作
对于 0 空串 None …这些表示空性的值,都会转换为False,剩下的都是True

not None    返回结果:True
not True    返回结果:False
not False   返回结果:True
not 0       返回结果:True
非布尔值的与或运算

当对布尔值进行与或非运算的时候,Python会将其当成布尔值运算,最终返回的是原值;
1、⾮布尔值与运算的规则:
与运算是找False的,如果第⼀个值是False,则不看第⼆个值。
如果第⼀ 个值是False,则直接返回第⼀个值,否则返回第⼆个值。
2、⾮布尔值或运算的规则:
或运算是找True的,如果第⼀个值是True,则不看第⼆个值。
如果第⼀个 值是True,则直接返回第⼀个值,否则返回第⼆个值。

5、条件运算符

如果(if)条件结果为真(True)就运行语句1, 否则(else)就运行语句2 ;
学习笔记004-字符串、运算符、逻辑运算符等等

print('python') if True else print('java')
返回结果:python
a = 10
b = 20
print('a的值比较大') if a > b else print('b的值比较大')
返回结果:b的值比较大

课堂作业:

以4种格式化字符串的⽅式来实现 521 xxx 嫁给我好吗?

#以4种格式化字符串的⽅式来实现 521 xxx 嫁给我好吗?
#方式一
ns = '女神'
print('521'+ ns + '嫁给我好吗?')
#方式二
print('521%s嫁给我好吗?'%'女神')
#方式三
a= '521{}嫁给我好吗?'
s=a.format('女神')
print(s)
#方式四
ns= '女神'
a =f'521{ns}嫁给我好吗?'
print(a)

现在有a b c三个变量,三个变量中分别保存有三个数值,请通过条件运 算符获取三个值中的最⼤值。

#现在有a b c三个变量,三个变量中分别保存有三个数值,请通过条件运算符获取三个值中的最⼤值
方式一:
a = 150
b = 100
c = 20
print('a的值比较大') if a>b else print('b的值比较大')
print('a的值比较大') if a>c else print('c的值比较大')
print('b的值比较大') if b>c else print('c的值比较大')
返回结果:
a的值比较大
a的值比较大
b的值比较大

方式二:
a = 150
b = 100
c = 20
if a>b and a>c:
    print('a的值比较大')
else:
    if b>c and b>a:
        print('b的值比较大')
    else:
        print('c的值比较大')
返回结果:a的值比较大

本文地址:https://blog.csdn.net/q19348/article/details/107661719