python养成第二天

if语句的分类

几乎所有的编程语言的代码有三种语句:
 =顺序语句
 =判断语句/分支语句/开关语句:if else /  switch case /  case when
 =循环语句:for / while  / do while

 if语句

  • if的判断语句示例:

  • 类型1
if True:
    print('永远为真')

if False:
    print('永远为假')

# 0就是假
if 0:
    print('if后边是0')

# 非0就是真
if -1:
    print('if后边是非0')


# 有内容字符串就是真
if 'hello':
    print('if后边是有内容的字符串')

# 无内容字符串就是假
if '':
    print('if后边是无内容的空字符串')
# 真,空格也是字符
if ' ':
    print('if后边是空格字符串')


# 假
if 0.0:
    print('if后边是0.0')
# 真
if 0.1:
    print('if后边是0.1')

# 假,类似其他语言的null
if None:
    print('if后边是None')
  • 类型2

 

  •  示例代码如下,重在灵活运用
# 男生找对象:要么漂亮、要么贤惠、要么有钱

if '漂亮' or '贤惠' or '有钱':
    print('可以')
    
# 女生找对象:既要高、又要富、还要帅

# 女生找对象
if '高' and '富' and '帅':
    print('可以')
    
    
# 将不能结婚的条件取反,就是能结婚的条件
if not '不能结婚的条件' :
    print('可以结婚')
#-------------------------------------------------------
num = int(input('请输入一个数:'))

#判断一个数能否被3整除,同时能够被7整除,或者这个数是0

if (num % 3 == 0 and num % 7 == 0) or (num == 0):
    print(f'{num}满足要求')



# ---------------------------------------------
print('--------方式1---------')
if 3 <= num <= 10:
    print('num在3到10之间')

print('--------方式2---------')
if num >= 3 and num <= 10:
    print('num在3到10之间')

 if格式1如下:

语法:

    if  条件 :
    满足条件要执行的代码    

示例代码1:

# 从键盘输入一个年龄
age = int(input('请输入你的年龄:'))

#使用if进行判断
if age >= 18:
    print('你已经成年了!')
    print('可以进网吧了!')
    print('可以独立生活!')

print('程序结束!')

示例代码2:

# 从键盘输入一个年龄
age = int(input('请输入你的年龄:'))
sex = input('请输入你的性别:')

#使用if进行判断
if age >= 18:
    print('你已经成年了!')
    print('可以进网吧了!')
    print('可以独立生活!')
    if sex == '男':
        if age >= 22:
            print('你这个男的可以结婚了!')
    if sex == '女':
        if age >= 20:
            print('你这个靓女可以结婚了!')

print('程序结束!')

if格式2如下: 

语法:

if  条件 :
    满足条件要执行的代码
else:
   不满足条件要执行的代码  

示例代码:

# 要求:从键盘输入身高,如果身高没有超过150cm,则进动物园不用买票,否则需要买票
import sys

age = int(input('请输入你的年龄:'))
if age < 0 or age > 140:
    print('你输入的年龄不合法,程序退出!')
    sys.exit(0)

sex = input('请输入你的性别:')
if sex != '男' and sex != '女':
    print('你输入的性别不合法,程序退出!')
    sys.exit(0)

if age >= 18:
    if sex == '男':
        if age >= 22:
            print('你这个男的可以结婚了!')
        else:
            print('你这个男的还没有到法定结婚年龄')
    else:
        if age >= 20:
            print('你这个靓女的可以结婚了!')
        else:
            print('你这个靓女没有到达法定年龄!')
else:
    print('你还未成年,好好读书!')

if格式3如下:  

语法:

if  条件1 :
    满足条件1要执行的代码
elif  条件2:
     满足条件2要执行的代码
elif  条件3:
     满足条件3要执行的代码
else:
   以上所有条件都不满足要执行的代码  

示例代码1:

# 要求:键盘录入季节 --输出对应的季节活动.
season = input('请输入季节:')

if season == '春季':
    print('春节适合踏春!')
elif season == '夏季':
    print('夏季适合游泳!')
elif season == '秋季':
    print('秋季适合秋收!')
elif season == '冬季':
    print('冬季适合赏雪!')
else:
    print('你输入的季节有误!')

示例代码2:

# 要求:自己动手:键盘录入考试的分数.输出对应的级别
# 90-100优秀,70-90良好,60-70及格,低于60不及格
import sys

score = int(input('请输入你的分数:'))

if score < 0 or score > 100:
    print('你输入的成绩有误!')
    sys.exit(0)

if 90 <= score <= 100:
    print('成绩优秀!')
elif score >= 70:
    print('成绩良好!')
elif score >= 60:
    print('成绩良好!')
else:
    print('成绩不及格!')

示例代码3:

# 情节描述:上公交车,并且可以有座位坐下
# 要求:输入公交卡当前的余额,只要超过2元,就可以上公交车;如果车上有空座位,就可以坐下。

balance = float(input("请输入公交卡余额:"))
seat = 0

if balance >= 2:
    print('公主请上车!')
    if seat >= 1:
        print('公主请坐下!')
    else:
        print('公主请站着!')
else:
    print('公主请充钱!')

综合案例汇总如下,建议实操三遍加深记忆!!!

"""
1.   设置两个玩家 player computer
2.   player: 从控制台输⼊要出的拳 ⽯头(1)/剪⼑(2)/布(3)
3.   computer: 电脑 随机 出拳
4.   player和computer⽐较胜负
"""
import random     #import -->表示导入模块  -->random(随机模块)

# 1、客户出拳
import sys        #sys(导入sys工具,调用exit方法,当符合条件时执行程序退出命令)

player  =  int(input("请出拳:"))        #player(变量容器名)  int(表示整数类型)  input(接收键盘输入的数据)
if player not in (1 ,2 ,3):
    print('你输入非法')
    sys.exit(0)

# 2、电脑出拳
computer = random.randint(1, 3)  #产生1到3之间的随机数,包含1和3

if computer == 1:
    print('电脑出的是石头')
if computer == 2:
    print('电脑出的是剪刀')
if computer == 3:
    print('电脑出的是布')

# 3、player和computer⽐较胜负
if player == computer:
    print('平局!')
elif (player == 1 and computer == 2) or (player == 2 and computer == 3) or (player == 3 and computer == 1):
    print('玩家赢!')
else:
    print('电脑赢! ')

循环语句 <注:如不理解就debug调式看参数与依赖关系>


while循环

语法:

#初始化语句
while 判断条件:
    循环体
    改变条件的语句

示例代码1如下:

i = 1  # 初始化语句,只会执行一次
while i <= 5: # 满足条件,会就执行循环体
    print('媳妇儿,我错了')  # 循环体
    i = i + 1   # 改变循环条件
    

 示例代码2如下<加强版>:

#需求: 1+2+3+4+5+...100
sum = 0
i = 1
while i <= 100:
    sum = sum + i
    i += 1
print(f'sum全部和 = {sum}')

print('-------------------------------')
#需求: 1+2+3+4+5+...100 的偶数和
sum = 0
i = 0
while i <= 100:
    sum = sum + i
    i += 2
print(f'sum偶数和 = {sum}')

print('-------------------------------')
#需求: 1+2+3+4+5+...100 的偶数和
sum = 0
i = 1
while i <= 100:
    if i % 2 == 0:
        sum = sum + i
    i += 1
print(f'sum偶数和 = {sum}')

break 和continue关键字

功能介绍:

1、在一个循环中,遇到break,则跳出本层循环,执行循环后边的内容
2、在一个循环中,遇到continue,则跳过这次循环剩余的代码,执行下一次循环

示例代码如下:

# 1、需求输出1-10之间的数字,需要4就退出
# 在一个循环中,遇到break,则跳出整个循环,执行循环后边的内容


i = 1
while i <= 10:
    if i == 4:
        break
    print(i)
    i += 1

print('程序结束')

print('---------------------------------')
# 在一个循环中,遇到continue,则跳过这次循环剩余的代码,执行下一次循环
# 2、需求输出1-10之间的数字,需要4就跳过   1 2 3 5 6 7
i = 0
while i < 10:
    i += 1
    if i == 4:
        continue
    print(i)


print('程序结束')

循环嵌套

# 小学教程如下:
i = 1
while i <= 20:
    j = 1
    while j <= 50:
        print('*',end='')
        j += 1
    print()
    i += 1

# 初中强度如下:
i = 1
while i <= 10:   #天

    j = 1
    while j <= 3:  #圈
        print(f'今天是第{i}天,在跑第{j}圈!')
        j += 1

    i +=1

print('--------------------------------------')
"""
********
********
********
********
********
"""
i = 1
while i <= 5:  #行

    j = 1
    while j <= 7: #列
        print('*',end='')
        j += 1
    print()  # 换行

    i += 1



print('--------------------------------------')
"""
  i     j
第1行:  7颗星
第2行:  6颗星
第3行:  5颗星
第4行:  4颗星
第5行:  3颗星
第6行:  2颗星
第7行:  1颗星
第i行: (8-i)颗星
"""
print('--------------------------------------')
i = 1
while i <= 7:  #行

    j = 8-i
    while j >= 1: #列
        print('*',end='')
        j -= 1
    print()  # 换行

    i += 1


print('--------------------------------------')
'''
   *
  ***
 *****
*******

---------------------------
  i     k
第1行:  1颗星
第2行:  3颗星
第3行:  5颗星
第4行:  7颗星
第i行: 2*i - 1颗星

---------------------------
  i     j
第1行:  3空格
第2行:  2空格
第3行:  1空格
第4行:  0空格
第i行: 4-i空格
'''

i = 1
while i <= 4:
    j = 4-i
    while j >= 1:  #打印空格
        print(' ', end='')
        j -= 1

    k = 1
    while k <= 2 * i - 1:  #打印*
        print('*',end='')
        k += 1
    print()
    i += 1

---------------------------
i = 1

while i <= 7:

    j = 1
    while  j <= 8 - i :
        print("*",end='')
        j += 1
    print()
    i += 1

for循环 

语法:

for 临时变量 in 列表或者字符串等: 
    循环满足条件时执行的代码

特点:

1、在for语句中,in的后边只能跟字符串和其他容器(元组,列表、字典)
2、for语句一般用来进行遍历(把容器中的元素一个个的获取)

示例代码如下:

name = 'zhangsan'

for x in name:
    print(x)


#------------------------------

num = 153

for x in str(num):
    print(x)

  • 11
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值