python语言基础-笔记2

一.常用函数语句

1.内置函数range()

 1 #内置函数range(),用于生成一个整数列
 2 r=range(10)      #第一种用法:range(stop),默认起始值为0、步长为1,整数列中不包含stop值本身
 3 print(r)         #返回值是一个迭代器对象:range(0,10)
 4 print(list(r))   #list()可返回整数列所有元素:[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
 5 
 6 r=range(1,10)    #第二种用法:range(start,stop),默认步长为1
 7 print(r)         #range(1,10)
 8 print(list(r))   #[1, 2, 3, 4, 5, 6, 7, 8, 9]
 9 
10 r=range(1,10,3)  #第三种用法:range(start,stop,step)
11 print(r)         #range(1, 10, 3)
12 print(list(r))   #[1, 4, 7]

优点:节省存储空间。range()的对象占用的存储空间只有start、stop、step。

判断:is & not is

r=range(1,10,3)  #第三种用法:range(start,stop,step)
print(r)         #range(1, 10, 3)
print(list(r))   #[1, 4, 7]

print(bool(9 in r))         #False
print(bool(10 in r))        #False

print(bool(9 not in r))     #Ture
print(bool(10 not in r))    #Ture

 2.else语句

1) if...else...      -->   if条件表达式不成立时执行else 

      pass       

2)while...else... & for...else...     -->   没有碰到break就执行else

 

 1 #for...else...
 2 for i in range(3):
 3     psw=int(input('请输入密码:'))
 4     if psw==8888:
 5         print('密码正确。')
 6         break
 7     else:
 8         print('密码不正确。')
 9 else:
10     print('您三次密码输入均不正确,已锁定。')

 

 1 #while...else...
 2 a=0
 3 while a<3:
 4     p = int(input('请输入密码:'))
 5     if p==8888:
 6         print('密码正确。')
 7         break
 8     else:
 9         print('密码不正确。')
10         a=a+1
11 else:
12     print('您输入的三次密码均不正确。已锁定该账户。')

 

 

 

二.循环结构

1.while

1 #计算0-4之间的累加和
2 #while循环四步走:
3 sum=0
4 a=0             #1.初始化变量
5 while a<5:      #2.条件判断
6     sum+=a      #3.条件执行体(循环体)
7     a=a+1       #4.改变变量
8 print(sum)

和if的区别:

#while判断n+1次,返回Ture,执行n+1次
a=0
while a<10:
    a=a+1
print(a)  #10
#if判断一次,返回Ture,执行一次
a=0
if a<10:
    a=a+1
print(a)  #1

while练习:

#while循环练习:1-100之间的偶数和
sum=0
a=0
while a<=100:
    if a%2==0:
        sum=sum+a
    a=a+1
print('1-100之间的偶数和为:',sum) #1-100之间的偶数和为: 2550

 2.for in

从字符串、序列等(可迭代对象)中依次取值,也称遍历。
1 #for循环练习:0-100间的偶数和
2 sum=0
3 a=range
4 for a in range(0,101):
5     if a%2==0:
6        sum+=a
7 print('0-100间的偶数和为:',sum)      #0-100间的偶数和为:2550

 

 for in 练习:
#for in循环练习:100-999之间的水仙花数  水仙花数指:水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身
for i in range(100,1000):
    bai= i//100
    shi=(i-bai*100)//10
    ge=(i-bai*100-shi*10)
    if pow(bai,3)+pow(shi,3)+pow(ge,3)==i:
        print('100-999之间的水仙花数为:',i)
'''100-999之间的水仙花数为: 153
   100-999之间的水仙花数为: 370
   100-999之间的水仙花数为: 371
   100-999之间的水仙花数为: 407
'''

三.流程控制语句

1.break语句:用于结束循环语句,通常与分支结构if 一起使用。

for  in

 

1 #输入密码,最多三次,密码正确则结束循环
2 for i in range(3):                  #最多三次输密码的机会
3     k = int(input('请输入密码:'))    #k作为循环体的一部分,如果放到for in 外面就不参与循环了!
4     if k==8888:
5         print('密码正确.')
6         break                      #密码正确就直接跳出for in 循环
7     else:
8         print('密码不正确!')

 

while

a=0
while a<3:
    k=int(input('请输入密码:'))
    if k==8888:
        print('密码正确.')
        break                        #密码正确立即跳出循环
    else:
        print('密码不正确。')
        a=a+1                      #a=3时不进入循环

break图示:

 

 

2.continue跳转语句

 

 

#输出1-50中5的倍数,要求使用continue
for i in range(1,51):
    if i%5!=0:
        continue
    else:
        print(i)

 

continue图示:

 

四.嵌套循环

1.嵌套:外层 循环+内层循环

找个简单例子方便理解

 1 #打印一个三行四列的矩形
 2 for i in range(1,4):                 
 3     for b in range(1,5):
 4         print('*',end='\t')
 5     print()
 6 '''
 7 *    *    *    *    
 8 *    *    *    *    
 9 *    *    *    *
10 '''
#打印一个直角三角形
for i in range(1,10):    #打印行数
    for j in range(1,i+1):    #第i行,打印i列
        print('*',end='\t')   #九九乘法表只需将*换为几乘几
    print()
'''
*    
*    *    
*    *    *    
*    *    *    *    
*    *    *    *    *    
*    *    *    *    *    *    
*    *    *    *    *    *    *    
*    *    *    *    *    *    *    *    
*    *    *    *    *    *    *    *    *    
'''

 

1 × 1 = 1
1 × 2 = 2 2 × 2 = 4
1 × 3 = 3 2 × 3 = 6 3 × 3 = 9
1 × 4 = 4 2 × 4 = 8 3 × 4 = 12 4 × 4 = 16
1 × 5 = 5 2 × 5 = 10 3 × 5 = 15 4 × 5 = 20 5 × 5 = 25
1 × 6 = 6 2 × 6 = 12 3 × 6 = 18 4 × 6 = 24 5 × 6 = 30 6 × 6 = 36
1 × 7 = 7 2 × 7 = 14 3 × 7 = 21 4 × 7 = 28 5 × 7 = 35 6 × 7 = 42 7 × 7 = 49
1 × 8 = 8 2 × 8 = 16 3 × 8 = 24 4 × 8 = 32 5 × 8 = 40 6 × 8 = 48 7 × 8 = 56 8 × 8 = 64
1 × 9 = 9 2 × 9 = 18 3 × 9 = 27 4 × 9 = 36 5 × 9 = 45 6 × 9 = 54 7 × 9 = 63 8 × 9 = 72 9 × 9 = 81

1 #打印一个九九乘法表
2 for i in range(1,10):
3     for j in range(1,i+1):
4         print(j,'×',i,'=',i*j,end='  ')
5     print()

2.二重循环中的break和continue语句

 

 

 

 break

1 for i in range(5):          #外层循环五次
2     for j in range(1,11):   #j=1打印,j=2就break
3         if j%2==0:
4             break
5         print(j,end='\t')   #因此会打印出五个一
6 #1    1    1    1    1

continue

 1 for i in range(5):          #外层循环五次
 2     for j in range(1,11):   #j=1打印,j=2continue,就会有之后的内层循环:j=3,4,5...,10
 3         if j%2==0:
 4             continue
 5         print(j,end='\t')   #因此会打印出五个一
 6     print()    #换行再进入外层循环
 7 '''
 8 1    3    5    7    9    
 9 1    3    5    7    9    
10 1    3    5    7    9    
11 1    3    5    7    9    
12 1    3    5    7    9    
13 '''

 

 

 

 

 

 

posted @ 2021-06-16 12:31  蓝色森林lin  阅读(80)  评论(0)    收藏  举报