小白学习笔记之Python条件控制语句

非布尔值的与或运算

当我们对⾮布尔值进⾏与或运算时,Python会将其当做布尔值运算,最终会 返回原值

非布尔值的与运算

⾮布尔值与运算的规则 与运算是找False的,如果第⼀个值是False,则不看第⼆个值。如果第⼀ 个值是False,则直接返回第⼀个值,否则返回第⼆个值

a=1 and 2
print(a)  #2
a=2 and 1
print(a)  #1
a=0 and 1
print(a)   #0
a=1 and 0 
print(a)   #0
a=2 and 3
print(a)   #3
非布尔值的或运算

⾮布尔值或运算的规则 或运算是找True的,如果第⼀个值是True,则不看第⼆个值。如果第⼀个 值是True,则直接返回第⼀个值,否则返回第⼆个值

a=1 or 2
print(a)  #1
a=2or 1
print(a)  #2
a=0 or 1
print(a)  #1
a=1 or 0
print(a)  #1

条件运算符

它是if else 但不是if-else语句,它是三元运算符
条件运算符(if后边没有:):
a=0
b=1
m=a if a>b else b
if-else语句(if后边有:)
if a>b :
b=a
else:
a=b

条件运算符在执⾏时,会先对条件表达式进⾏求值判断
如果判断结果为True,则执⾏语句1,并返回执⾏结果
如果判断结果为False,则执⾏语句2,并返回执⾏结果

在这里插入图片描述
例如:

 a=10
 b=20
 c=50
 m=a if a>b and a>c else b if b>c else c    #如果a>b并且a>c则m=a,否则 判断b是否大于c,是m=b,否m=c 
 print(m)  #50

运算符的优先级

运算符优先级参照表:https://docs.python.org/3/reference/expressions.html#operator-precedence

条件判断语句

if语句
if语句在执⾏时,会先对条件表达式进⾏求值判断, 如果为True,则执⾏if后的语句 如果为False,则不执⾏
if	True:
    print('hello world')  #要么都执⾏要么 都不执⾏
input()函数

该函数⽤来获取⽤户的输⼊

User_Input = int(input('请输入一个整数:'))
if-else语句
if-else语句在执⾏时,先对if后的条件表达式进⾏求值判断 如果为True,则执⾏if后的代码块 如果为False,则执⾏else后的代码块
dog= float(input())
if dog>0:
     print(‘有狗出没’)
else:
     print('不存在')
if-elif-else语句
if-elif-else语句在执⾏时,会⾃上向下依次对条件表达式进⾏求值判 断,如果表达式的结果为True,则执⾏当前代码块,然后语句结束 如果表达式的结果为False,则继续向下判断,直到找到True为⽌ 如果所有的表达式都是False,则执⾏else后的代码块

if-elif-else中只会有⼀个代码块会执⾏

# dog= float(input())
# person=0
# if dog<0 :
#     print('输入有误')
# elif dog<=2 :
#     person=dog*10.5
# else:
#     person=2*10.5
#     person+=(dog-2)*4
# if dog>0:
#     print(person)
# else:
#     print('不存在')
while语句

三要素
1.初始化表达式:初始化一个变量
2.条件表达式:循环的规则
3.更新条件表达式:修改初始化变量的值

# 求1000以内所有的⽔仙花数
m_index = 1  # 第几个数
i = 100  # 第一个三位数  (初始化表达式)
num = 0  # 保存结果
while i < 1000:  #条件表达式
    num = ((i % (10 ** 1)) ** 3) + (((i % (10 ** 2)) // (10 ** 1)) ** 3) + ((i // 100) ** 3)
    if num == i:
        print(f'第{m_index}个水仙花数是:{num}')
        m_index += 1  
    i += 1    #更新条件表达式
这个错误是由于无法连接到本地主机的10248端口导致的。这个端口通常是kubelet进程监听的端口,用于健康检查。出现这个错误可能是由于kubelet进程没有正确启动或者配置错误导致的。 解决这个问题的方法是检查kubelet进程的状态和配置。你可以按照以下步骤进行操作: 1. 检查kubelet进程是否正在运行。你可以使用以下命令检查kubelet进程的状态: ```shell systemctl status kubelet ``` 如果kubelet进程没有运行,你可以使用以下命令启动它: ```shell systemctl start kubelet ``` 2. 检查kubelet的配置文件。你可以使用以下命令查看kubelet的配置文件路径: ```shell kubelet --kubeconfig /etc/kubernetes/kubelet.conf --config /var/lib/kubelet/config.yaml --bootstrap-kubeconfig /etc/kubernetes/bootstrap-kubelet.conf config view ``` 确保配置文件中的端口号和地址正确,并且与你的环境相匹配。 3. 检查网络连接。你可以使用以下命令检查是否可以连接到localhost10248端口: ```shell curl -sSL http://localhost:10248/healthz ``` 如果无法连接,请确保端口没有被防火墙或其他网络配置阻止。 4. 检查docker的配置。有时候,kubelet进程依赖于docker进程。你可以按照以下步骤检查docker的配置: - 创建/etc/docker目录: ```shell sudo mkdir /etc/docker ``` - 编辑/etc/docker/daemon.json文件,并添加以下内容: ```json { "exec-opts": ["native.cgroupdriver=systemd"], "log-driver": "json-file", "log-opts": { "max-size": "100m" }, "storage-driver": "overlay2", "storage-opts": [ "overlay2.override_kernel_check=true" ], "registry-mirrors": ["https://tdhp06eh.mirror.aliyuncs.com"] } ``` - 重启docker进程: ```shell systemctl restart docker ``` 请注意,以上步骤是一种常见的解决方法,但具体解决方法可能因环境而异。如果以上步骤无法解决问题,请提供更多的错误信息和环境配置,以便我们能够更好地帮助你。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值