1.if语句
import是导入一个模块/包的关键字
random模块中提供很多和随机数相关的功能
import random
1.if就是在程序用来做判断的
randint(m,n)——>产生一个m到n的随机数(整数)
import random
num = random.randint(0,10)
print(num)
#在0~5范围内随机生成一个数
2.if结构
a.语法:
if条件语句:
执行语句块
b.说明
if——>是python中的关键字
条件语句:——>要求最终有一个值,可以是一个自变量,也可以是变量…一般情况下要求结果是个布尔值
:——>固定写法
执行语句块——>可以是多行代码,这片代码要和前面的if保持一个缩进
#注意:在满足条件后才执行的代码写在if中,不管条件是否成立都要执行代码就写在if外面;但是如果有if,if里面至少要有一条语句。
判断一个数是否是偶数
import random
num = random.randint(0,5)
print(num)
print(num)
if num&1 == 0:
print('是偶数')
print('======')
练习:判断一个字符串中随机位置上的一个字符是否是字母,如果是就打印出‘该字符是字母’不管是不是字母都打印取出来的字符
import random
str = '26sdfsdf(45a)'
index = random.randint(0,len(str)-1)
char = str[index]
print(char)
if 'a'<=char<='z' or 'A'<=char<='Z':
print('该字符是字母')
3.if-else结构
num = 10
if num%2 == 0:
print('是偶数')
else:
print('是奇数')
print('是数字')
结果
4.if-elif-else结构
执行过程:
先判断条件语句1是否成立,
如果成立直接执行语句块1,然后整个if结构结束
如果不成立,再判断条件语句2是否成立
如果条件语句2成立,就执行语句块2,然后整个if结构结束。
如果条件语句2不成立,执行语句块3
练习:
随机产生0-100的年龄值,根据年龄的不同 确定人处于哪个阶段。( 0-3岁 幼儿,4-12岁 儿童,13-18 少年,19-28 青年,29——100老年)
import random
age = random.randint(0,100)
print(age)
if 0<=age<=3:
print('幼儿')
elif 4<=age<=12:
print('儿童')
elif 13<=age<=18:
print('少年')
elif 19<=age<=28:
print('青年')
else:
print('老年')
5.if镶嵌
在分之结构中,我们可以在if,elif或者else后面镶嵌一个或多个其他的if语句。
练习:判断一个数是不是偶数,如果是打印出'是偶数',并且判断这个偶数能不能被4整除,如果能打印'是4的倍数',否则打印'不是4的倍数'如果是奇数,打印奇数的最后一位/判断最后一位是否是1
import random
num = random.randint(0,100)
if num&1 == 0:
print('这个是偶数')
if num%4 ==0:
print('是4的倍数')
else:
print('不是')
else:
print(num)
last = num % 10 #取各位上的数
print(last)
#判断是奇数的时候最后一位是否是1
if last == 1:
print(last)
2.for循环
1.for循环结构
for 变量 in 序列:
******循环体
说明
序列:要求是一个值,而且值必须是一个序列(容器),比如:字符串、列表、字典、集合、元祖、迭代器、范围(Range)
循环体:和for保持一个缩进的代码段。循环体会被重复执行.循环体可以写任何代码
执行过程:让便咯昂去序列中取值,一个一个的取,取完为止。每取一个值,执行一次循环体。
for x in 'abc'
print(x)
print(x)
结果
练习:获取字符串'a78and71-2cd'中数字字符的个数
count = 0
str = 'a78and71-2cd'
for char in str:
#判断是否为数字
if char.isdigit():
#print(char)
count += 1 #count = count + 1
print(count)
#5
2.range函数
a.range(n):产生一个0 ~ n-1范围对应的整数序列
for num in range(10):
pritn(num)
结果
b.range(m,n):产生一个m ~ n-1范围对应的整数序列
for num in range(10,21):
print(num)
c.range(m,n,step):产生一个m ~ n-1中间隔step范围对应的整数序列
for num in range(1,10,2):
print(num)
结果
练习:计算1+2+3…+100
sum1 = 0
for num in range(1,101):
sum1 += num
print(sum1)
#5050
练习:打印5行o
for x in range(5):
print('o')
结果
3.while循环
执行过程:判断条件语句的结果是否为True,为True执行循环体。
执行完循环体,再判断条件语句是否为True,为True又执行循环体。
依次类推,直到判断条件语句为False,循环结束
注意:whlie True:--->死循环
练习:用while循环实现1+2+3+4……+100
num = 1
sum1 = 0
while num <= 100:
sum1 += num
num += 1
print(sum1)
#5050
练习:求n!=123..n
n = 10
num = 1
sum1 = 1
while num<=10:
sum1 *= num
num+=1
print(sum1)
#3628800
练习:用while循环获取字符'hello python'中的每个字符
index = 0
str = 'hello python'
while index < len(str):
print(str[index])
index += 1
结果
3.break.continue和else
1.continue
只能写在循环体中,作用是,当遇到continue就结束当次循环直接进入下次循环的判断
例如:
for x in range(10):
print(x)
continue
print(x*2)
结果
练习:计算1~100中非奇数的和(使用continue)
sum1 = 0
for x in range(0,100):
if x % 2 == 1:
continue
sum1 += x
print(sum1)
#2450
2.break
只要在循环中遇到break,整个循环直接结束,执行后面的其他语句。
for x in range(1,10):
print(x)
break
print('====')
print('####')
#1 ####
3.else
循环到自然死亡后,执行else后面的代码。
如果循环因为遇到break结束,else后面的代码就不会执行
for x in range(1,10):
print(x)
if x == 3:
break
else:
print('结束了')
结果
网友评论