今天是我们学习Python的第二天,任务似乎有些多,如果有错误的地方希望大家给nullptr.cpp在下方留言,首先谢谢大家的观看🐳🐳🐳
运算符_循坏语句 _字符串格式化
🍊.运算符
🍉 五个必须掌握的运算符
提到运算符,我想大家首先想到的就是加、减、乘、除之类, 本节要系统的跟大家来聊一聊,我们写代码时常见的运算符可以分为5种:
- 基本算数运算符,例如:加,减,乘,除
- 基本比较运算符,例如:大于、小于
注意:python3中不支持 <>
(python3不向下兼容python2)
- 赋值运算,例如:变量赋值
- 成员运算,例如:是否包含
check = "null" in "nullpte.cpp" # "null"在"nullptr"里面,所以check变量赋值为True
# 让用户输入一段文本,检测文本中是否包含敏感词。
test = input("请输入内容:") # 假如输入:ikun is me
if "ikun" in text: # ikun 在我们输入的里面
print("真爱粉") # 打印:真爱粉
else:
print(text)
- 逻辑运算,例如:且或非
check01 = not 1>2
print(check) # 打印:True
check01 = 10>5 or 1>2
print(check) # 打印:True
check01 = 10>5 and 1>2
print(check) # 打印:False
🍉 运算符的优先级
运算符的优先级有很多,我们记住常用的就行,遇到自己的不确定就加括号就行,嘿嘿
- 算数优先级优先级 大于 比较运算符
if 10 + 10 > 11:
print("真")
else:
print("假")
- 比较运算符优先级 大于 逻辑运算符
if 1>3 and 5<10:
print("成立")
else:
print("不成立")
- 逻辑运算符内部三个优先级 not > and > or
if not 2 and 1>3 or 10 == 8:
print("真")
else:
print("假")
上述这3个优先级从高到低总结:加减乘除 > 比较 > not and or
。绝招:不清楚就加括号。嘿嘿
🍊.分支和循坏语句
🍉 if and else 分支语句
分支:简单来说就是在一个路口,前面有很多分叉路,这时你只能选择其中一种。
password = 123
if password == input("请输入密码"): # 条件满足就执行这个
print("密码正确")
else
print("密码正确") # 否则就是else里面的语句
在加入一个else
password = 123
if password == input("请输入密码"): # 条件满足就执行这个
print("密码正确")
elif "yes" == input("密码错误,再次输入请输入yes") # 第一次if不满足,就判断elif是否满足,
if password == input("请输入密码"): # 条件满足就执行这个
print("密码正确")
else
print("密码正确") # 否则就是else里面的语句
else
print("密码正确") # if和elif都不满足,就执行else里面的语句
🍉 while循坏 and for循坏
🍌 while循坏
如果你之前学过C语言或者其他,这些对你来说,看几遍就很OK了,下面我们一起来看看!
循坏就是拼命重复一个过程,遇到了相应的条件就停止。
'''
基本语法:
while 条件:
xxx语句
'''
cnt =10
while cnt<=20:
print("cnt") # python 默认四个空格缩进
cnt+=1
# break:直接退出循坏 和 continue:退出当前那层循坏
# 和C/C++一样
- 示例1
print("开始")
while True:
print("nullptr.cpp")
print("结束")
''' 输出:
开始
nullptr.cpp
nullptr.cpp
nullptr.cpp
nullptr.cpp
...
'''
- 示例2
print("开始")
while 1 > 2:
print("如果祖国遭受到侵犯,热血男儿当自强。")
print("结束")
# 输出:
开始
结束
- 实战游戏例子
# 2.随机获取 1~100的数字
import random
num = random.randint(1,100)
flag = True
cnt = 0
while flag:
guess_num = int(input("输入你猜测的数字"))
cnt+=1
if guess_num==num:
print("恭喜你,猜对了")
break
# 或者flag = False
else:
if guess_num>num:
print("很遗憾,猜大了")
if guess_num<num:
print("很遗憾,猜小了")
print(f"你总猜测了{cnt}次")
🍌 for循坏
for循坏我们就不多说了,直接上代码吧
# 1.基本语法 for x in yyy: for循环无法定义循环条件
#就是把yyy的内容,依次赋值给 x; 类似 C++ --> for(autp x: nums)
name ='Python'
for x in name:
print(x,end='')
# 输出:Python
使用 range函数控制循坏次数
# 2.range语句
# 2.1 比如range(5) 获取0-4
for x in range(5):
print(x) #打印:01234
# 2.2 比如range(5,10) 获取5-9 区间是[left,right)
for x in range(5,10):
print(x) #打印:56789
# 2.3 比如range(5,10,2) 获取5-7-9
for x in range(5,10,2):
print(x) #打印:579
# 3.for和 range 就可以控制循环次数 range(x):就是循环多少次
for x in range(5):
print("nullptr.cpp") # 打印5次:nullptr.cpp
🍊.字符串格式化
我们说的格式化不是说清空字符串;而是我们在使用print函数打印时,更好的把数据类型插入到相应的字符串中,我们使用字符串格式化,使用跟便捷的形式实现字符串的拼接。
🍉 使用%进行格式化
我们直接上代码吧!!!
name = "nullptr.cpp"
# % :占位符,对应到 %x 中
# test = "我叫%s,今年18岁" %"nullptr.cpp"
test = "我叫%s,今年123岁" %name
# test = "我叫nullptr.cpp,今年123岁"
#多个变量时
name = "nullptr.cpp"
age = 18
# text = "我叫%s,今年%s岁" %("nullptr.cpp",18)
# text = "我叫%s,今年%s岁" %(name,age)
text = "我叫%s,今年%d岁" %(name,age)
message = "%(name)s你在吗?%(user)s等着你。" % {"name": "坤哥", "user": "ikun"}
print(message)
有一个细节,我们使用%输出百分比的时候要带上%!
test = "a17Pro芯片只提示了10%"
print(test) # 正常输出:a17Pro芯片只提示了10%
name = "a17Pro"
print("%s芯片只提示了10%%"%name) # 10%加上%这样才输出:a17Pro芯片只提示了10%
🍉 format(很推荐使用)
优点
- 多一个功能就是可以自己定位在{num}里的位置输出
- 不用在 %x 写数据类型
# 使用 %x 和 str.format()对比一下
text = "我叫%s,今年%f岁" # 需要写 %s 和 %f 来表示类型
data1 = text %("nullptr.cpp",20)
data2 = text %("ikun",2.5)
# 下面就要方便很多
text = "我叫{0},今年{1}岁"
data1 = text.format("nullptr.cpp",888)
data2 = text.format("ikun",2.5)
# 具体实例
text = "我叫{0},今年18岁".format("nullptr.cpp")
text = "我叫{0},今年{1}岁".format("nullptr.cpp",18)
print("我叫{},今年{}岁,真是的姓名是{}。".format("nullptr.cpp",18,ikun))
# 不在{}里面写数字下标,就是默认顺序
# 输出:我叫nullptr.cpp,今年18岁,真是的姓名时ikun。
print("我叫{0},今年{1}岁,真是的姓名是{0}。".format("nullptr.cpp",18))
# 输出:我叫nullptr.cpp,今年18岁,真是的姓名是nullptr.cpp。
🍉 使用 f (巨方便)
这个 f 功能也是python3.6给我们带来的,综合了很多该有优点,下面看代码
test = f"今天跑了{10}km !"
print(test) # 输出:今天跑了10km !
num_km = 10
test = f"今天跑了{num_km}km !"
print(test) # 输出:今天跑了10km !
day ="今天"
num_km = 10
test = f"{day}跑了{num_km}km !"
print(test) # 输出:今天跑了10km !
# 在Python3.8引入
test = f"猫猫的名字叫梅狸猫,今年{1 + 2=}岁"
print(test)
# 进制转换
c1 = f"猫猫体重{5}kg"
print(c1)
c2 = f"猫猫体重{5:#b}kg"
print(c2)
c3 = f"猫猫体重{5:#o}kg"
print(c3)
c4 = f"猫猫体重{5:#x}kg"
print(c4)
最后谢谢大家的观看 🐳🐳🐳