Python学习之语言基础——选择结构if语句、循环结构while语句、for循环遍历、range()函数、break和continue

if语句
单分支
#格式
# if 表达式:
#     代码块

x=int(input(''))   #输入11
if x>10:    
    print(x)     #输出11
#如果x大于10,输出x
双分支
​#格式
# if 表达式:
#     代码块1
# else:
#     代码块2

x=int(input(''))   #9
if x>10:
    print(x)
else:
    print(10)     #10
#如果x大于10输出x,否则输出10
多分支
#格式
#if 表达式1:
#	代码块1
#elif 表达式2:    
#	代码块2
#else:
#	代码块n
#如果满足表达式1则执行代码块1;如果满足表达式2则执行代码块2;否则执行代码块n
表达式
条件表达式:关系运算符

1、关系运算符用于数值的大小比较,一般用于条件表达式;

2、包括大于()、小于(<)、等于(==)、大于等于(=)小于等于(<=)和不等于(!=)六种;

3、它们都是双目运算符;

4、关系运算符运算的结果是bool型,值只有两种: False或True;

5、False代表关系不成立,True代表关系成立。

逻辑表达式

1、Python语言中提供了三种逻辑运算符:与运算(and)、 或运算(or)、非运算(not);与运算符和或运算符均为双目运算符,具有左结合性;非运算符为单目运算符,具有右结合性。

2、短路操作:在Python 中,and 和or 不一定会计算右边表达式的值,有时候只计算左边表达式的值就能得到最终结果。另外,and 和or 运算符会将其中一个表达式的值作为最终结果,而不是将 True 或者 False 作为最终结果。

3、对于 and 运算符,两边的值都为真时最终结果才为真,但是只要其中有一个值为假,那么最终结果就是假。

如果左边表达式的值为假,那么最终结果都是假,此时 and 会把左边表达式的值作为最终结果。此时就不用计算右边表达式的值,因为不管右边表达式的值是什么都不会影响最终结果。

如果左边表达式的值为真,那么最终值是不能确定的,and 会继续计算右边表达式的值,并将右边表达式的值作为最终结果。

print(False and True)  #False
print(True and 2+3)  #5

4、对于 or 运算符,情况是类似的,两边的值都为假时最终结果才为假,只要其中有一个值为真,那么最终结果就是真。

如果左边表达式的值为真,那么最终结果都是真,此时 or 会把左边表达式的值作为最终结果。那么右边表达式的值就不用计算了,因为不管右边表达式的值是什么都不会影响最终结果。

如果左边表达式的值为假,那么最终值是不能确定的,or 会继续计算右边表达式的值,并将右边表达式的值作为最终结果。

print(False or 1+1)  #2
print(True or 1+1)  #True
for语句
#格式
#for <variable> in <sequence>:
#   代码块

1、<variable>:循环变量,一般为i,j,k;

2、<sequence>:序列或者可迭代的对象(可遍历的),一般为range()。

range()函数

range0函数用于生成一系列数字,用于循环结构的遍历;

在python2中生成一个数字列表,python3中是一个可迭代对象 (可遍历的)

range(start, stop, step)
#从start开始(默认为0) ,到stop结束 (不含stop),步长为step (默认为1)

1、range(5) 等价于 range(0,5) 等价于 range(0,5,1): 0,1,2,3,4

2、range(0,10,3): 从0开始到10结束 (不含10) ,步长3: 0,3,6,9

3、range(0,9,3): 从0开始到9结束 (不含9),步长3: 03,6

4、range(10,-1,-2): 从10开始到-1结束 (不含-1) ,步长-2: 10,8,6,4,2,0

示例
n=int(input('n:'))
o=0
j=0
sum=0
quadrature=1
for i in range(1,n+1):
    if i%2==0:            #用判断语句
        print("偶数:",i,end=';')
        o+=i
    else :
        j+=i
print(' ')       #换行
print("奇偶数和:",o+j)
for j in range(2,n+1,2):   #用步长筛选偶数
    print(j,end=',')
    sum+=i         #求和
print(' ')        #换行
print("1-n的和:",sum)
quadrature*=i        #n的阶乘
print("1-n的阶乘:",quadrature)

#输出结果
#n:10
#偶数: 2;偶数: 4;偶数: 6;偶数: 8;偶数: 10; 
#奇偶数和: 55
#2,4,6,8,10, 
#1-n的和: 50
#1-n的阶乘: 10
while语句
#格式
#while 条件表达式:
#	代码块

#辗转相除求m和n的最大公约数
m,n=eval(input('输入m和n'))        #输入m和n3,6
r=m%n      #求余数
while r!=0:      #当余数不为零:GCD(m,n)=GCD(n,r)
    m=n    #新一轮的被除数m等于上一轮的除数n
    n=r    #新一轮的除数n等于上一轮的余数r
    r=m%n  #新一轮的余数
print("gcd=%d"%n)              #gcd=3
for循环和while循环区别

1、for循环常用于已知循环次数的情况,或者遍历列表,字典等数据结构;

2、while循环可用于不知道循环次数,但可以通过终止条件停止循环;

3、在一定程度上两者可互相转换。

while循环求和
n=int(input())     # 10
i=1
res=0
while i<=n:
    res+=i
    i+=1
print(res)      # 55
for循环求和
n=int(input())      #10
res=0
for i in range(1,n+1):
    res+=i
print(res)      # 55
break和continue区别

break语句可以跳出for和while的循环体,即直接结束循环。适用于嵌套循环中。

continue语句跳过当前循环体块儿中的剩余语句,进行下一轮循环,即跳过本次循环继续执行下一次循环。

break
i=0
while True:
    i+=1
    if i>5:
        break
    if i==3:
        continue
    print(i,end=',')    #1,2,4,5,
continue 
i=0
while True:
    if i>5:
        break
    if i==3:
        continue
    i+=1
    print(i,end=',')     #1,2,3,
循环嵌套例子
九九乘法表
for i in range(1,10):
    for j in range(1,i+1):         #对外循环的每一个i执行内循环
        print("%d*%d=%2d "%(j,i,i*j),end='')
    print("")     #末尾换行
结果

 n到m间的素数
n=int(input("n:"))       #1
m=int(input("m:"))       #50
for i in range(n,m+1):
    ok=True
    for j in range(2,i):    #如果i能被2到i-1之间的数整除则不是素数
        if i%j==0:
            ok=False
            break
    if ok and i!=0 and i!=1:
        print(i,end=',')    #2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,

欢迎指正!

  • 37
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值