Python

day4学习总结0615

2018-07-07  本文已影响0人  星星曦馨

01-homework

练习: 程序的执行时从上往下执行 解析如下:
i = (0,1,2,3,4,5,6,7....19)第一次i=0 numbers = 2 ;第二次 i= 1 numbers = 22;第三次 i=2 numbers = 22*2 2^3 ...;第20次 i =19 numbers = 2^201。 求2的20次方

numbers = 1
for i in range(0,20):
    numbers*=2
print (numbers)

2.统计1-100中能被3整除或者7整除,但是不能被21整除的数的个数num=(1,2,3,4,...100,101)

summation = 0
num = 1
while num <= 100:
if (num % 3 == 0 or num % 7 == 0) and num % 21 != 0:    #num值能被3和7整除,但是不能被21整除
  summation += 1
  num += 1
print(summation)
print (num)

练习:1.求1到100之间所有数的和、平均值
使用for循环:

sum1 = 0
fox x in range(1,101):
  sum1 = sum1 + x
print (sum1)
print (sum1/100)

使用while循环:

sum1 = 0
x = 1
while x <= 100:
  sum1 = sum1 + x
  x += 1
print (sum1)
print (sum1/100)

2.1,1,2,3,5,8,13,21,....n?
# n1=1,n2=2,n3=3

n1 = 1  # 前面第一个数
n2 = 2  # 前面第二个数
num = 0 # 当前数值大小
n = 10  # 表示当前要求的第几个数

if n == 1 or n == 2:
pirnt (1)
else:
for x in range(3,n+1):
  numn = n1 + n2
  n1 = n2
  n2 = numn
print (numn)

2.判断101-200之间又多少个素数,并输出所有的素数。(质数、素数:只能被或者他本身整除)判断素数的方法:用一个数分别除2到sqrt(这个数),如果能被整除,则表明次数不是素数,反之是素数第一个循环将101-200中的所有的数据去处理

num = 0
for x in range(101,201):
    # x = (101~200)
    # 拿到X后,判断2到x-1中有没有一个数可以被被x整除。如果2到x-1中没有一个能被x整除
    # 就说明x是素数。只要有一个可以被x整除,x就不是素数
    count = 0  # 统计2到x-1中能够被x整除的数的个数
    for y in range(2,x):
        if x % y == 0:
            print (x,'不是素数')
            count += 1
     if count == 0:
            print (x,'是素数')
            num += 1
print (num)

02-break和continue
break是一个让循环提交结速的关键字

03-猜数字

  • for循环和while循环的选择:
  • for循环 的特点:次数确定,可以在序列中取数据
  • while:可以解决循环次数不确定的(while True + break)

练习:随机生成一个整数。用户输入数字。如果用户输入的数字大于随机数就显示:‘大了’;如果用户输入的数小于随机数就提示'小了'。直达哦用户输入的数和随机数一样游戏就结速。
生产随机数:random模块是Python内置的,用来产生随机数的模块,里面提供了很多产生随机数的函数;

randint(m,n):产生一个m到n的随机整数
import random
num = random.randing(0,100)
count = 0
while True:
    count +=1
inputValue = int(input('请输入一个数:'))
if inputValue > num:
    print ('大了')
elif inputVlue < num:
    print ('小了')
elif inputValue == num:
    print ('猜对了,没有奖励')
    if count > 7:
        print('猜了这么多次才中!!!')
    elif count < 3:
        print ('天才')
    else:
        print ('太差了')
    break

04-continue

2.continue:结束当次循环,进入下次循环

for x in range(1,10):
print ('=',end='')
continue    #遇到continue就不再执行循环体后面的内容,直接进入下一次循环的判断
print (x)

练习:1.求1到100中所有的奇数的和

sum1 = 0
for x in range(1,101):
    if x % 2 == 0:
        continue
    sum1 += x
print (sum1)

2.统计输入的数字中偶数的个数。如果输入0,就结速。(必须使用continue)

flag = True
count = 0
whiile flag:
#输入数据
inputvalue = int(input('>>>'))
#判断是否是奇数
if inputvalue % 2 == 1:
    continue
if inputvalue == 0
    flag = False
count += 1


print ('偶数的个数:',count)

05-else

练习:1.求123....10的和

sum1 = 1    #sum1的值不能大于10000
for x in range(1,11):
    sum1 *= x
else:
    print (sum1)

06-多重循环

练习:如果n=5,打印
1
12
123
1234
12345
...

  n = int(input('请输入要打印的行数 :'))
  for x in range(1,n+1):
        for y in range(1,x+1):  #y控制获取当前行里的所有数值
            print (y,end='')    #一行结束换行
    print ()

n = 5:
*****
****
***
**

上一篇下一篇

猜你喜欢

热点阅读