首页 > 其他分享 >while循环与for 循环

while循环与for 循环

时间:2023-08-29 19:11:45浏览次数:31  
标签:username count else while 循环 print

Python条件控制和循环语句(if while for )

条件控制

概念:Python 条件语句是通过一条或多条语句的执行结果(True 或者 False)来决定执行的代码块

if1.png

if2.png

结构

1. 顺序结构

1. 分支结构
2. 循环结构

1. 单分支
if 条件:
条件成立之后执行的代码块

2. 双分支
if 条件:
条件成立之后执行的代码块
else:
条件不成立之后执行的代码块
3. 多分支
if 条件:
条件成立之后执行的代码块
elif 条件1:
条件不成立、条件1成立执行的代码块
elif 条件2:
条件不成立、条件1成立执行的代码块
elif 条件3:
条件不成立、条件1成立执行的代码块
elif 条件4:
条件不成立、条件1成立执行的代码块
elif 条件5:
条件不成立、条件1成立执行的代码块
else:
条件不成立之后执行的代码块

  • 在嵌套 if 语句中,可以把 if...elif...else 结构放在另外一个 if...elif...else 结构中。
    if 表达式1:
    语句
    if 表达式2:
    语句
    elif 表达式3:
    语句
    else:
    语句
    elif 表达式4:
    语句
    else:
    语句

- 1. 做一个用户登录功能,用户名:kevin,密码:123
# 要求:用户名和密码都输入正确,打印来宾三位,否则:提示用户名或者密码错误
# 1. 接收用户输入的用户名
username = input('请输入你的用户名:')

# 2. 接收用户的密码
password = input('请输入你的密码:')  # str

# 3. 比较用户名和密码是否正确
if username == 'kevin' and password == '123':
    print('来宾三位')
else:
    print('用户名或者密码错误')
1. 根据用户名的不同,打印不同的身份
   kevin(管理员) tony(保安) jerry(财务人员) tank(司机) 打印未知人员
   1. 让用户输入用户名
    username = input('请输入你的用户名:')
   开始比较
    if username == 'kevin':
        print('管理员')
    elif username == 'tony':
        print('保安')
    elif username == 'jerry':
        print('财务人员')
    elif username == 'tank':
        print('司机')
    else:
        print('未知人员')

注意事项:1. 所有的条件最终都会转化为布尔值进行判断,条件是否成立
2. Python中,使用缩进来表示代码的从属关系
3. 同属于一个代码块的多行子代码块缩进量要一致
4. 不是每一个代码都会有子代码块

## 循环语句

while while+break while + else while+continue 标志位

  • whlie1.png

  • 同样需要注意冒号和缩进。另外,在 Python 中没有 do..while 循环。
    while2.gif

    while 来计算 1 到 100 的总和:
    

    n = 100

    sum = 0

    counter = 1

    while counter <= n:

    sum = sum + counter

    counter += 1
    print("1 到 %d 之和为: %d" % (n,sum))

    输入密码:
    while True:
        username = input('请输入你的用户名:')
        password = input('请输入你的密码:')
    
        if username == 'kevin' and password == '123':
            print('登录成功')
        else:
            print('登录失败')
    

while+else

count = 0
while count < 5:
    if count == 3:
        break
    print(count)
    count += 1
else:
    print('哈哈哈')
"""else: 当while循环中没有被中断(break)的时候会走else语句"""

whlie+break

while True:

username = input('请输入你的用户名:')

password = input('请输入你的密码:')

if username == 'kevin' and password == '123':

  <span class="hljs-built_in">print</span>(<span class="hljs-string">'登录成功'</span>)

  <span class="hljs-keyword">break</span> <span class="hljs-comment"># 跳出本层循环</span>

else:
print('登录失败')
count += 1

break跳出本层循环的含义

while True:

username = input('请输入你的用户名:')

password = input('请输入你的密码:')

if username == 'kevin' and password == '123':

<span class="hljs-built_in">print</span>(<span class="hljs-string">'登录成功'</span>)

<span class="hljs-comment">####### 让用户继续输入它要执行的指令,用户输入完指令之后,打印正在执行某个指令</span>

<span class="hljs-keyword">while</span> <span class="hljs-literal">True</span>:

    cmd = <span class="hljs-built_in">input</span>(<span class="hljs-string">'请输入你要执行的指令:'</span>)

    <span class="hljs-keyword">if</span> cmd == <span class="hljs-string">'q'</span>:

        <span class="hljs-comment"># 结束程序</span>

        <span class="hljs-keyword">break</span>

    <span class="hljs-built_in">print</span>(<span class="hljs-string">'正在执行你的指令:%s'</span> % cmd) <span class="hljs-comment"># 当用户输入q的时候,结束程序</span>

<span class="hljs-keyword">break</span>

else:

<span class="hljs-built_in">print</span>(<span class="hljs-string">'登录失败'</span>)

标志位的使用

flag = True
while flag:
    username = input('请输入你的用户名:')
    password = input('请输入你的密码:')
<span class="hljs-keyword">if</span> username == <span class="hljs-string">'kevin'</span> <span class="hljs-keyword">and</span> password == <span class="hljs-string">'123'</span>:
    <span class="hljs-built_in">print</span>(<span class="hljs-string">'登录成功'</span>)
    <span class="hljs-comment">####### 让用户继续输入它要执行的指令,用户输入完指令之后,打印正在执行某个指令</span>
    <span class="hljs-keyword">while</span> flag:
        cmd = <span class="hljs-built_in">input</span>(<span class="hljs-string">'请输入你要执行的指令:'</span>)
        <span class="hljs-keyword">if</span> cmd == <span class="hljs-string">'q'</span>:
            <span class="hljs-comment"># 结束程序</span>
            flag = <span class="hljs-literal">False</span>
        <span class="hljs-built_in">print</span>(<span class="hljs-string">'正在执行你的指令:%s'</span> % cmd) <span class="hljs-comment"># 当用户输入q的时候,结束程序</span>
<span class="hljs-keyword">else</span>:
    <span class="hljs-built_in">print</span>(<span class="hljs-string">'登录失败'</span>)

while+continue

使用while循环打印出0-10之间的数字, 但是不打印6
count = 0
while count < 10:
    if count == 6:
        count += 1
        # 不打印
        continue  # 跳出while循环的本次循环 --------------- 本层
    print(count)
    count += 1

死循环:

程序中坚决不能出现死循环

count = 0
while True:
    print(count)
    count+=1

"""如果一旦出现了死循环,CPU的利用率会极速拉满,导致其他程序也不能用,甚至于关机"""

for

  1. for循环不会出现死循环,它的循环条件不是我们来控制,是人家内部已经控制好了

  2. for循环和while循环都是用来重复一个事情的,for循环能够实现的功能,while循环都可以实现
    for循环的语法结构更加简洁,它不容易出现死循环,所以,推荐以后能够使用for循环的都使用for循环

  3. 可迭代对象:字符串、列表、字典、元组等,能够支持for循环的对象都是可迭代对象
    for循环的语法格式:
    for 变量名 in 可迭代对象:
    pass

  4. '''字典暴露的是字典的key'''

    d = {'username': 'jerry', 'age': 18}
    for i in d:
        print(i, d[i]) # username age
    

range关键字

    1. 方式1
    for i in range(10):  # 生成一个从0开始到9的数字
        print(i)
    for i in [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]:
        print(i)
    


  1. 方式2

    for i in range(3, 10): # 生成一个从3开始到9的数字列表
    

    print(i)

  2. 方式三

    for i in range(0, 250, 25): # 第三个参数代表的是步长
    

    print(i)

"""练习题:使用for循环生成这10页的地址"""

https://movie.douban.com/top250?start=0&filter= # 第一页
https://movie.douban.com/top250?start=25&filter= # 第二页
https://movie.douban.com/top250?start=50&filter= # 第三页
https://movie.douban.com/top250?start=75&filter= # 第四页
https://movie.douban.com/top250?start=100&filter= # 第五页
https://movie.douban.com/top250?start=225&filter= # 最后一页

base_url = 'https://movie.douban.com/top250?start=%s&filter='
for i in range(0, 2500, 25):
# print(base_url % i)
print('https://movie.douban.com/top250?start=%s&filter=' % i)

for+break

for i in range(10):
    if i == 6:
        break
    print(i)

for+continue

for i in range(10): 
    if i == 6:
        continue
    print(i)

for+else

'''跟while循环的用法一样,中间如果有中断程序,else就不在走了'''
for i in range(10):
    if i == 6:
        break
    print(i)
else:
    print('hahh ')

for循环嵌套

for i in range(3):
    for j in range(5):
        print("*", end='')
    print()  # print()表示换行

标签:username,count,else,while,循环,print
From: https://www.cnblogs.com/wolongnp/p/17665656.html

相关文章

  • 通过动态创建a标签,循环批量下载文件所遇到的问题记录
    1.现象:直接for循环动态创建a标签后,进行click事件触发下载时,你会发现浏览器只下载了最后一个文件原因:浏览器下载时,太快的话,会取消上次的下载解决方法一:可添加settimeout定时器,进行一定时间延迟,比如300毫秒,把下载触发的事件放到定时器中即可。2.解决方法二通过ifram......
  • for循环中调用接口
    有一个需求项,循环调用接口注意不要使用forEach,使用forof或者forin方法1 方法2 自执行函数 ......
  • 用js reduce 写一个reduce循环遍历数组对象,里面带有if判断
    简单的reduce案例,实际场景中使用不多,这里给到一个常用的遍历数组对象!!varproducts=[{name:"Apple",price:2.5,quantity:3},{name:"Banana",price:1.5,quantity:2},{name:"Orange",price:3,quantity:4},];vartotalPrice=products......
  • linux: 用-w满足for循环打印序列位数的一致性
    1打印1-100foriin`seq001100`do echo$idone打印效果:2打印001-100如果是要求所有的序列位数必须保持一致的话,则可以用用-w参数foriin`seq-w1100`doecho$idone打印效果:......
  • 实用指令_大数据shell_流程控制_while
    流程控制while基本语法while[条件判断式]do程序done应用实例案例1:从命令行输入一个数据n,统计从1+..n的值是多少#!/bin/bashecho你输入的值:$1 sum=0 i=0while[$i-le$1]do sum=$[$sum+$i]###注意=号不要空格8 i=`expr$i+1`###注......
  • 在 PHP 中,原生并没有提供内置的定时器机制,定时触发的守护进程,其中一个常见的方式是使
    <?phpclassTimerDaemon{private$logfile;private$fp;private$triggerInterval;//触发间隔,以秒为单位private$lastTriggerTime;publicfunction__construct($logfile,$triggerInterval){$this->logfile=$logfile;......
  • 不用循环和递归判断值在数组中的索引
    ////数组集合string[]str=newstring[]{"a","b","c","d","e","f","g"};////要查找的字符串stringNum="c";////使用Linq查询,将索引和值查出来,////新建一个匿名类,属性包括aabool类型,和Index索引......
  • Java流程控制循环结构while和do...while
    循环结构主要有三种:while循环,do...while循环,for循环,在java5中引入了一种主要用于数组的增强型for循环while是最基本的循环,结构为:while(布尔表达式){//循环内容}只要布尔表达式为true,循环就会一直执行下去我们大多数情况是会让循环停下来的,我们需要一个表达式来结......
  • 循环神经网络
    循环神经网络frommxnetimportndx,w_xh=nd.random.normal(shape=(3,1)),nd.random.normal(shape=(1,4))h,w_hh=nd.random.normal(shape=(3,4)),nd.random.normal(shape=(4,4))print(nd.dot(x,w_xh)+nd.dot(h,w_hh))print(nd.dot(nd.concat(x,h,dim=1......
  • 二、条件语句和while循环
    条件语句和while循环流程控制语句(if)If:关键字特殊含义:如果功能:判断功能使用(语法规则):if条件表达式:当条件表达式的运算结果为True执行缩进里面的代码if条件表达式:\nelse:Else:else是关键字含义:否则功能:判断if条件表达式:elif条件表达式:else:elif:elif是关键字含义:否则如果功能:判......