Python 入门必备-循环习题和 else 子句|学习笔记

简介: 快速学习 Python 入门必备-循环习题和 else 子句

开发者学堂课程【Python 开发基础入门Python 入门必备-循环习题和 else 子句】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/556/detail/7653


Python 入门必备-循环习题和 else 子句

目录:

一、练习

二、循环 else 子句


一、练习

分析概论:

1. 迭代的思想是无法写入到过程中,应当知晓思想的过程,同时利用初中所学可以写出,但这并非正确结果,这是学习的一个难点,是不会把学习思想转化为程序逻辑。这也是其将展开训练的一个点。

2.对于下面这一道题。对于题目中的所问,应当学会拆题的思想, 将复杂的业务问题拆成许多个小块。然后每一个逐步攻克。

3.对于业务而言,这是非常复杂的。拆成每一块,都需要进行去攻坚,其中包含一些复杂的问题。应当如何正确使用技术。首先,应当抽丝剥茧。用所知道的知识去攻克,对于部分的难点,应当慎重。

4.则下题就相当于一个业务。将题干分为两大部分首先应当判断。题目中所给出的数,然后依次进行迭代,以及项目。同时后问可以和

前一问所问不同,现已经看出。

5.所给数字12345。思考能否将12345打印出来。将其解答出来,与前面一个问题进行结合,即可回答问题。同时,程序存在多种写法先看程序所在方式优点。

例题:

给定一个不超过5位的正整数,判定该数的位数,依次打印出个位,十位,百位。千位。万位的数字

val = input(>>>)                  

val = int(val)

print(val)

ifval>= 1000: #折半

if val> =10000:

num=5:

else:

num=4

else:

if val> =100:

num= 3

elifval >= 10:

num=2

else:

num=1

print(num)

c=val(所输入的值转化为一个数字)

for i in range(num):

n=c1/10 :

print(c - n*10)

c=n #如果打印顺序是从万位到个位.如何实现?

插入:多给予变量引用54321,5432仅有一份,多一个变量来记录。做一次引用计数,所产生代价很小。可以忽略不计。若直接代入,则原本数据会丢失。所以应当加入一份。要一直记录所在值,以防后题目中所需。

假设输入为54321

第一-趟: 54321 // 10= 5432

54321 - 5432*10= 1

(思考:能否进入第二趟?)如下:

第二趟: 5432// 10= 543

5432 - 543*10= 2

依次类推

例:number=int(input("Input a number>>>"))

number*= 10

while (number//10) != 0:

number //= 10

print(number%10)

假设输入值为54321。带入到其中,则变为543210

即如下:

第一趟54321! =0

54321 %10 =>1

2趟5432! =0

number = 543211/10

5432 %10 =>2

例:num = input("num s:')

numV = len(num)

print( numV)

num = int(num)

for i in range(numV):

print(num % 10)

num = num//10

第一趟:

5432 %10=>1

543

例:a=input('Please enter a number: ')

b=int(a)

cnt=O

for i in range(1,len(a)+1):

print(b%10)

b=b//10

cnt+=1

print(cnt)

forcin"54321"

例子:

给定一 个不超过5位的正整数,判断该数的位数,依次从万位打印到个位的数字

val = input(‘>>>’)

val = int(val)

print(val)

fval>= 1000: #折半

if val> = 10000:

num=5

else:

num=4

pre=5

else:

if val>=100:

num=3

elifval>= 10

num=2

else:

num=1

print(num)

pre=0

for i in range(num,0, -1):

cur = vaÍ//(10*(i-1))

print(cur - pre*10)

pre = cur

假设输入为54321

第一趟:cur= 54321 // 10000 = 5

打印5-0

pre=5

第二趟:cur= 54321 // 10000= 54

打印54-5*10=4

pre=54

第三趟:cur= 54321 // 100= 543

打印543-54*10=3

pre=543

依次类推。

例子:

#给定一个不超过5位的正整数,判断该数的位数,依次打印万位,千位,百位,十位,个位的数字

number=int(input( "Input a number>>>"))

if number > 1000:

if (number > 9999) :

div = 10000else :

div = 1000

else:

if (number > 100):

div = 100

elif (number > 10) :div = 10

else:   I

div = 1

while div !=0: #54321”

print ( number//div)

number %= div

div//=10

把不需要的数据舍弃。将需要的数据代入,再次重复循环。

例:num= int(input())

lnum = len (str (num) )

c=num

for y in range ( lnum) :

m=c//(10**( lnum-y-1))

print (m)

c -= 10**( lnum-y-1)*m

当对数据类型掌握越来越多。方式的灵活性更加多样。同样数据验证是必须解决的问题,输入是否合法,需慎重考虑。

 

二.循环 else 子句

if 中存在 else 子句,其他语言中没有 else 子句,在 Python 语言中,存在大量else子句

语法:

while condition:

else: block

for element in iteratable:

block

else:

block

由前部分可以看出,此为while循环,存在else。For循环下方存在与上方同级。但是前四行属于While,后方属于for。

如果循环正常的执行结束,就执行else子句;如果使用break终止,else子句不会执行。

例子:

for i in range (5) :

print (i)----i为1.2.3.4.

if i >3

break

else :

print ( 'ok ')

当输入为4时,先行打印,随后进入判断若结果不想输出为四,则添加条件——print(i)[break]下方,则结果处于不正常推出。

若更改为continue

For  i  in  [ ]:

If  i  > 3:

Continue

print ( i)

else :

print ( 'ok')

0

1

2

3

Ok

若循环正常结束,没有任何东西可以取出。则被迭代,若没有元素,可以拿出。同样不为 break。则执行 else。

若循环并非被强行 break,则为正常结束,若为 return。就无法看到 else。

目前所学阶段,若循环增加 else。并非强行 break 则正常。是否使用 else 子句看个人需求。

Python 语言认为没有必要使用if。若不使用 else,则在后方需写上 if 语句。Python 语言提供很好的语法功能。可以为其减轻负担。写大量的 Python语言,则使用 Python 语言的语法。

练习:

1.打印一个边长为n的正方形

——与打印的行宽有关,假如提供为4,则建议用*号代替。

2.求100内所有奇数的和( 2500 )

3.判断学生成绩,成绩等级A~E。其中,90分以上为A,80~89分为B; , 70~79分为C,60~69分为D,60分以下为E’

4.求1到5阶乘之和

5.给一个数,判断它是否是素数(质数)

6.质数:一个大于1的自然数只能被1和它本身 整除

相关文章
|
20小时前
|
分布式计算 Python
Python函数式编程学习笔记
高阶函数是能接收另一个函数作为参数的函数,如Python的map()、reduce()和filter()。map()将传入的函数应用到序列每个元素并返回迭代器,如将整数列表转换为字符串列表。reduce()对序列进行累积计算,例如求和。filter()根据给定函数返回的真值保留或丢弃序列元素,常用于筛选。sorted()函数支持自定义排序,如按绝对值或ASCII值排序。此外,还包括返回函数、匿名函数(lambda)、装饰器(用于动态增强函数功能)和偏函数(partial),用于固定函数部分参数,简化调用。
9 1
|
20小时前
|
Python 索引 C语言
Python3从零基础到入门(2)—— 运算符-3
Python3从零基础到入门(2)—— 运算符
|
20小时前
|
存储 Python
【python】习题第10周题解
【python】习题第10周题解
10 1
|
20小时前
|
Python
【python】习题 第10周
【python】习题 第10周
13 0
|
20小时前
|
Python
【python】习题第9周
【python】习题第9周
12 0
|
20小时前
|
数据安全/隐私保护 Python
【python】习题第8周
【python】习题第8周
8 0
|
20小时前
|
Python
【python】习题第7周(下)
【python】习题第7周(下)
11 0
|
20小时前
|
自然语言处理 Python
【python】习题第7周(上)
【python】习题第7周(上)
12 1
|
20小时前
|
Python
【python】习题 6-10周(下)
【python】习题 6-10周(下)
9 0
|
20小时前
|
自然语言处理 数据安全/隐私保护 Python
【python】习题 6-10周(中)
【python】习题 6-10周(中)
15 0