我是靠谱客的博主 含糊小猫咪,最近开发中收集的这篇文章主要介绍while循环和for循环与它们的区别,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一、while循环与if语句有些类似,检查布尔类型的真假,与if不同的是它会循环执行,执行一次后会重复执行,直到执行到假为止,而while Ture是在不知道结果时给的一个条件,作为大部分不知道结果的语句应用。

n = int(input("请输入要打的层数"))
index = 1
while index <= n:
    num = index * """*"""
    print(num)
    index = index + 1

这是我自己写的最基本的whil输出行数

import random
WORDS = ("holle")
print("猜单词游戏")
# iscon
words = random.choice(WORDS)
print (words)
newword = ""
while words:
    position = random.randrange(len(words))
    newword += words[position]
    words = words[:position]+words[(position+1)]
print("乱序后的单词是",newword)
guess = input("请你猜单词")
if guess == right:
    print("对")
else:
    print("错了")

这个则是比较难的进阶版的猜单词游戏,需要引入其他的单词

(a,b) = eval(input("输入两个整数"))
k = 1
while True:
    if a % k == 0 and b % k == 0:
        k += 1
        god = k
    elif k > a or k > b:
        break
        print("%s是最大公约数"%(god))

这个则是我上面说的对于while Ture的用法,是对与不知道结果是什么的,就比如上图所说的公约数。

二、for循环可以遍历任何序列的项目,比如字符串、列表、元组、字典、集合等序列类型,逐个获取序列中的各个元素,需要在执行所得结果后在代码后加上终止语句,break或comtinie。

num = int(input("输入打印层数"))
for i in range(0,num):
    for j in range(num-i,0,-1):
        print(" ",end="")
    for j in range(-i,i+1):
        print(abs(j)+1,end="")
        j += 1
    print("")
这则是我用for循环的打印层数,他需要引用range,相比于while比较复杂,且需要终止语句。

count = 0
for i in range(2,1001):
    for j in range(2,i)
        if i % j == 0:
            break
    else:
        print(i,end="t")
        count += 1
        if count % 8 == 0:
            print()

这则是输出一千以内的质数,不同于上条是达到条件后需要break或者continue来终止循环,不然就会一直输出结果。

三、对比for循环和while循环,两者在使用else上有很大区别,如果else语句和while循环语句一起使用,则当条件变成False时,就执行else语句。如果else语句和for循环语句一起使用,else语句块只在for循环正常终止时执行。另外for循环和while循环的循环次数有很大的不同。前者是取决于数据包含的元素个数,后者是却取决于条件何时为False。而在循环取值方面,for循环比while循环要强大,所以如果遇到循环取值的场景,就应该用for循环。但是另一方面,for循环只能对某种事物的集合做循环,而while可以进行任何种类的循环。

最后

以上就是含糊小猫咪为你收集整理的while循环和for循环与它们的区别的全部内容,希望文章能够帮你解决while循环和for循环与它们的区别所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(58)

评论列表共有 0 条评论

立即
投稿
返回
顶部