第7章 用户输入和 while 循环

第7章 用户输入和 while 循环

  • [7.1 函数 input()的工作原理](#7.1 函数 input()的工作原理)
    • [7.1.1 编写清晰的程序](#7.1.1 编写清晰的程序)
    • [7.1.2 使用 int()来获取数值输入](#7.1.2 使用 int()来获取数值输入)
    • [7.1.3 求模运算符](#7.1.3 求模运算符)
  • [7.2 while 循环简介](#7.2 while 循环简介)
    • [7.2.1 使用 while 循环](#7.2.1 使用 while 循环)
    • [7.2.2 让用户选择何时退出](#7.2.2 让用户选择何时退出)
    • [7.2.3 使用标志](#7.2.3 使用标志)
    • [7.2.4 使用 break 退出循环](#7.2.4 使用 break 退出循环)
    • [7.2.5 在循环中使用 continue](#7.2.5 在循环中使用 continue)
    • [7.2.6 避免无限循环](#7.2.6 避免无限循环)
  • [7.3 使用 while 循环处理列表和字典](#7.3 使用 while 循环处理列表和字典)
    • [7.3.1 在列表之间移动元素](#7.3.1 在列表之间移动元素)
    • [7.3.2 删除为特定值的所有列表元素](#7.3.2 删除为特定值的所有列表元素)
    • [7.3.3 使用用户输入来填充字典](#7.3.3 使用用户输入来填充字典)

7.1 函数 input()的工作原理

7.1.1 编写清晰的程序

函数 input()接受一个参数,让用户应该输入何种信息。

bash 复制代码
num = input('输入一个数字: ')  # 等待输入
print(num)  # 输出

7.1.2 使用 int()来获取数值输入

使用函数 input()时,python解读为字符串。可使用函数 int(),它让 Python 将输入视为数值。

bash 复制代码
num = input('输入一个数字: ')  # 等待输入
num = int(num)
if num < 10:
    print(num)  # 输出

7.1.3 求模运算符

求模运算符(%)将两个数相除并返回余数。

bash 复制代码
print(10 % 3)  # 1
print(5 % 3)   # 2

7.2 while 循环简介

for循环用于针对集合中的每个元素都执行一个代码块,而while循环则不断运行,直到指定的条件不满足为止。

7.2.1 使用 while 循环

可使用 while 循环来数数。

bash 复制代码
i = 1
while i <= 5:
    print(i)  # 从1输出到5
    i = i + 1

7.2.2 让用户选择何时退出

定义一个退出值,只要用户输入的不是这个值,程序就将接着运行。

bash 复制代码
mess = ''
while mess != 'quit':
    mess = input('随便输入(输入quit则停止):')
    print(mess)

7.2.3 使用标志

在要求很多条件都满足才继续运行的程序中,可定义一个变量,用于判断整个程序是否处于

活动状态。

bash 复制代码
flag = True
while flag:
    mess = input('随便输入(输入quit则停止):')
    if mess == 'quit':
        flag = False
    else:
        print(mess)

7.2.4 使用 break 退出循环

要立即退出while循环,不在运行循环余下的代码,可以使用break语句。break 语句用于控制程序流程,可用来控制哪些代码行将执行、哪些代码行不执行。

bash 复制代码
num = 1
while True:
    print(num)
    if num > 3:
        break
    num = num + 1

7.2.5 在循环中使用 continue

要返回循环开头,并根据条件测试结果决定是否继续执行循环,可使用 continue 语句。

bash 复制代码
num = 0
while num < 10:
    num = num + 1
    if num % 2:  # num%2==1说明是奇数
        continue
    print(num)   # 输出偶数

7.2.6 避免无限循环

Ctrl + C,关闭显示程序输出的终端窗口。

7.3 使用 while 循环处理列表和字典

7.3.1 在列表之间移动元素

在一个列表中的数据提取出来,再将其加入另一个列表中。

bash 复制代码
str1 = ['A', 'B', 'C', 'D']
str2 = []
while str1:
    s = str1.pop()  # 获取最后一个元素,并删除了
    str2.append(s)  # 加入到新的列表中
print(str1)  # 空的
print(str2)  # ['D', 'C', 'B', 'A']

7.3.2 删除为特定值的所有列表元素

运行 while 循环,使用remove()方法删除列表中的特定值。

bash 复制代码
str1 = ['A', 'B', 'C', 'D', 'C', 'C']
while 'C' in str1:
    str1.remove('C')
print(str1)  # ['A', 'B', 'D']

7.3.3 使用用户输入来填充字典

可使用 while 循环提示用户输入任意多的信息。直到满足退出条件才终止程序。

bash 复制代码
mess = ''
while mess != 'quit':
    mess = input('随便输入(输入quit则停止):')
    print(mess)
相关推荐
林的快手5 分钟前
209.长度最小的子数组
java·数据结构·数据库·python·算法·leetcode
FeboReigns8 分钟前
C++简明教程(10)(初识类)
c语言·开发语言·c++
学前端的小朱9 分钟前
处理字体图标、js、html及其他资源
开发语言·javascript·webpack·html·打包工具
从以前20 分钟前
准备考试:解决大学入学考试问题
数据结构·python·算法
Ven%36 分钟前
如何修改pip全局缓存位置和全局安装包存放路径
人工智能·python·深度学习·缓存·自然语言处理·pip
枫欢38 分钟前
将现有环境192.168.1.100中的svn迁移至新服务器192.168.1.4;
服务器·python·svn
摇光931 小时前
js高阶-async与事件循环
开发语言·javascript·事件循环·宏任务·微任务
沐泽Mu1 小时前
嵌入式学习-QT-Day09
开发语言·qt·学习
测试杂货铺1 小时前
UI自动化测试实战实例
自动化测试·软件测试·python·selenium·测试工具·测试用例·pytest
小猿_001 小时前
C语言实现顺序表详解
c语言·开发语言