2021-03-23

print("---------------------------------------")
# Python 条件控制语句
# if语句 Python 中用elif代替了else if if语句的关键字为:if-elif-else
# 每个条件后面都要使用:指出满足条件的语句块
# 使用缩进划分语句块,相同缩进的语句块在一起组成一个语句块
# Python 中没有 switch-case 语句
# 实例1
# age=int(input('请输入狗狗的年龄:'))
# if age<0:
#     print('你在逗我吧!')
# elif age==1:
#     print('你家狗狗相当于人类14岁')
# elif age==2:
#     print('你家狗狗相当于人类22岁')
# elif age>2:
#     human=22+(age-2)*5
#     print('你家狗狗相当于人类:',human,'岁')
# >> 请输入狗狗的年龄:20
# >> 你家狗狗相当于人类: 112 岁
# if 中常用的操作运算符
# <     小于
# <=    小于或等于
# >     大于
# >=    大于或等于
# ==    等于,比较两个值是否相等
# !=    不等于
# 操作运算符演示
print(5==6);print(5>=6);print(5!=6)
# >> False False True

# 实例2
# num1=random.randrange(0,100)
# num2=-1
# print('----数字猜谜游戏开始!----')
# while num2!=num1:
#     num2=int(input("请输入你猜的数字:(0~100)"))
#
#     if num2==num1:
#         print('恭喜你,猜对了!')
#     elif num2<num1:
#         print('很遗憾,你猜小了!')
#     elif num2>num1:
#         print("很遗憾,你猜大了!")

# if 嵌套
# if 表达式1:
#     语句
#     if 表达式2:
#         语句
#     elif 表达式3:
#         语句
#     else:
#         语句
# elif 表达式4:
#     语句
# else:
#     语句

# 实例

num=int(input("请输入一个数字:"))
if num%2==0:
    if num%3==0:
        print('输入的数字既可以被2整除,又可以被3整除')
    else:
        print('输入的数字只能被2整除,不能被3整除')
else:
    if num%3==0:
        print('输入的数字只能被3整除,不能被2整除')
    else:
        print("输入的数字既不能被2整除,也不能被3整除")

# if语句的练习
import random
x=random.choice(range(100))
y=random.choice(range(100))
if x>y:
    print('x:',x)
elif x==y:
    print('x+y:',x+y)
else:
    print('y:',y)


print('---------欢迎来到狗狗对比系统----------------')
control='N'
while control=='N':
    try:
        age=int(input("请输入你家狗狗的年龄:"))
        print(' ')
        age=float(age)
        if age<=0:
            print('你TM在逗我吧?')
        elif age==1:
            print('相当于人类14岁')
            break
        elif age==2:
            print('相当于人类22岁')
            break
        else:
            human=22+(age-2)*5
            print('相当于人类:',human)
            break
    except ValueError: # 溢出判断
        print("您输入的数值不合法,请重新输入!")
    print('---')
    control = input("退出(Y/N)?")
    print('---')
input("点击 enter 退出")

# 条件为假 0,flase,'',None (四种情况)
a=0
if a:
    print(111)
else:
    print(222)
# >> 222

a=None
if a:
    print(111)
else:
    print(222)
# >> 222

a=''
if a:
    print(111)
else:
    print(222)
# >> 222

a=False
if a:
    print(111)
else:
    print(222)
# >>222

# 条件为真 True 不为零 'None'(即字符串不为空) 三种情况
a=True
if a:
    print(111)
else:
    print(222)
# >> 111

a=2
if a:
    print(111)
else:
    print(222)
# >> 111

a='None'
if a:
    print(111)
else:
    print(222)
# >> 111

# 使用判断语句实现BMI的计算
print("====欢迎使用BMI计算程序====")
name=input("请输入你的名字:")
heigh=eval(input('请输入你的身高(m):'))
weight=eval(input('请输入你的体重(Kg)'))
gender=input('请输入你的性别:(F/M)')
BMI=float(float(weight)/float(heigh)**2)
if BMI<18.4:
    print('姓名:',name,'偏瘦')
elif BMI<=23.9:
    print("姓名:",name,'正常')
elif BMI<=27.9:
    print('姓名',name,"超重")
elif BMI>=28:
    print('姓名',name,'肥胖')
# time 模块
import time
nowtime=(time.asctime(time.localtime(time.time())))
if gender=='F':
    print('感谢',name,'女士在',nowtime,'使用本程序','祝您身体健康!')
if gender=='M':
    print('感谢', name, '女士在', nowtime, '使用本程序', '祝您身体健康!')

# if 条件语句中 不同数值类型的 true 和 false 情况 两种极端的情况
# |类型    |False          |True
# |布尔    |False(与0等价)    |True(与1等价)
# |数值    |0,   0.0       |非零的数值
# |字符串 |'',""(空字符串)  |非空字符串
# |容器    |[],(),{},set() |至少有一个元素的容器对象
# |None  |None           |


# 随机数实验直到两数相等
a=0
while True:
    x=random.choice(range(100))
    y=random.choice(range(100))
    a=a+1 # 记录生成次数
    if x>y:
        print(x,'>',y)
    elif x<y:
        print(x,'<','y')
    else:
        print('x=y',x,'总共经过',a,'次比较')
        break

# Python 循环语句
# 同样需要注意冒号的使用和行列的缩进
# Python 中没有DO..WHILE循环
# 实例(计算1到1000的总和  有限循环)
print('---欢迎来到数值运算系统---')
n=int(input('请输入一个你想计算的值'))
sum=0  # 计数器
counter=1 # 容器
while counter<=n:
    sum=sum+counter
    counter+=1 # 等价于counter=counter+1

print('1到%d之和为%d'%(n,sum)) # 当然 因为每次都是随机数 所以比较的次数是不一样的


# python while语句可以实现无限循环(可以使用 ctrl+c 来退出当前无限循环)

# while else 语句 当条件语句为true时 执行while语句 当条件语句为false时 执行else 语句
# 实例
count=0
while count<5:
    print(count,'小于5')
    count+=1
else:
    print(count,'大于等于5')

# 简单语句组
# 如果while循环体中只有一条语句 可以将该语句与while写在同一行
# 实例
flag=1
while(flag):print("----------")
print('good bye')



# python 的 for 语句(主要用来遍历)
# for语句可以遍历任何序列的项目(可以是列表或者字符串)
# 实例
language=['C++','C','Python','JAVA']
for i in language:
    print(i,end=' ')

# >> C++ C Python JAVA
# 在for语句中使用break语句,break用于跳出当前的循环体
# 实例
sites=['Baidu','Google','Runoob','Taobao']
for site in sites:
    if site in sites:
        if site == 'Taobao':
            print("淘宝")
            break # 跳出循环体的条件
        print("循环数据"+site)
    else:
        print("没有循环数据")
print('完成循环')

# range 函数(遍历数字序列,可以使用python内置的range()函数
# 实例
for i in range(10):
    print(i,end=" ")
# >> 0 1 2 3 4 5 6 7 8 9
# 同时range函数可以指定区间的值 语法 range(start,end,步长)指名起始范围以及步长(即数值之间的增量)可以为负数
# 实例 遍历一个序列的索引
sites=['淘宝','百度','阿里巴巴','腾讯','字节跳动']
for i in range(len(sites)):
    print(i,sites[i])
# >> 输出位索引加字符串
# 0 淘宝
# 1 百度
# 2 阿里巴巴
# 3 腾讯
# 4 字节跳动

# 同样 range函数可以用来创建一个列表
# 实例
list1=list(range(5))
print(list1)
# >> [0, 1, 2, 3, 4]

# break 和 continue
# break可以跳出 for 和 while循环体 即结束循环 continue则为跳出当前循环进入下一轮循环
# while 中使用break
n=5
while n>0:
    n-=1
    if n==2:
        break
    print(n)
print("循环结束")
# 4
# 3
# 循环结束

# while 中使用continue
n=5
while n>0:
    n-=1
    if n==2:
        continue # 意为结束本轮循环 进入下一轮循环
    print(n)
print("循环结束")
# 4
# 3
# 1
# 0
# 循环结束
for litt in "Bigheadofliu": # 循环至倒数第二个字符
    if litt=='u':
        break
    print(litt) # for 循环体不能写在最内层的循环体中 否则得不到执行
# B
# i
# g
# h
# e
# a
# d
# o
# f
# l
# i

for litt in "Bigheadofliu": # 跳过指定字符直至最后一个字符
    if litt=='u':
        continue
    print(litt)
# B
# i
# g
# h
# e
# a
# d
# o
# f
# l
# i
# 循环语句中也可以有else语句
# 实例 (质数的查询)
for n in range(2, 10):
    for x in range(2, n):
        if n % x == 0:
            print(n, '等于', x, '*', n // x)
            break
    else:
        # 循环中没有找到元素
        print(n, ' 是质数')
# >>
# 2  是质数
# 3  是质数
# 4 等于 2 * 2
# 5  是质数
# 6 等于 2 * 3
# 7  是质数
# 8 等于 2 * 4
# 9 等于 3 * 3
print("-----------------------------------------")
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,875评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,569评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,475评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,459评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,537评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,563评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,580评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,326评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,773评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,086评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,252评论 1 343
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,921评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,566评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,190评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,435评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,129评论 2 366
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,125评论 2 352

推荐阅读更多精彩内容

  • 三趣园2021年春开园仪式有奖问答: 劳动 1、 认识并说出三种常见农田杂草(繁缕、辣子草、荠菜) 2、 认识并说...
    张阿玄阅读 204评论 0 0
  • 今天可以静下来学习一会了,最近这些天犹如狂风暴雨不断的拍打湖面,一浪接着一浪,现在风停了雨也停了,终于恢复到往日的...
    漫奇_manky阅读 136评论 0 0
  • 你把时间和精力花在哪里,结果就在哪里。 越努力的人,越幸运。努力奔跑的人更有机会接近成功,也更能接...
    江左刘楼阅读 161评论 0 1
  • 朋友在基层工作,跟我谈了最近让他头疼的事。十一年前有个企业与镇签了投资协议,工业地价8.5万一亩,结果十年后才拍得...
    阿霓_77b9阅读 126评论 0 0
  • 夜莺2517阅读 127,718评论 1 9