7.1 函数input()的工作原理

input()让程序暂停运行,等待用户输入文本。当用户输入文本后,将其存储到一个变量中。输入始终被当作字符串。
input()的参数是要向用户显示的提示或者说明,是一个字符串。 eg. message = input(“input something: “)

7.1.1 编写清晰的程序

  1. 1. 提示的末尾,即冒号后,通常会加一个空格。这样会将提示与用户的输入稍微分开。<br /> 2. 如果提示太长,可以分两行写,再连接字符串。<br /> eg.

prompt = “xxxxxxxxxxxxxxxxxxxxxxxx”

prompt += “\nxxxxxxxxxxxxxxxxxxxxx “ # \n 用来换行,最后加一个空格

message = input(prompt)

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

  1. 由于input()的输入始终被Python当作字符串,所以要获得数值,需要对数据类型进行转换。<br /> int()能将参数转换为整形,参数可以是字符串或者数字。<br /> eg. age

= input(“How old are you? “)
age = int(age)
print(age > 18)
#注意:如果只是想打印输入,那么即使不转换类型,也能输出数字,只不过是字符串类型,所以不能用于运算或者与其他数字比较。

7.1.3 求模运算符 %

  1. 求模,即取余数 eg. 5%2 结果为1<br />

7.2 while循环

while 条件表达式:
循环内容

  1. counter = 0
  2. while counter < 5:
  3. print(counter)
  4. counter += 1 #循环5次,输出0,1,2,3,4
  1. <br />控制循环何时退出的方式:<br /> 1.通过条件表达式中的循环变量<br /> 2.通过用户的输入<br /> 3.通过标志 #2,3本质上一样,本质上也和1一样,看条件表达式的返回值是True还是False.<br /> 4.使用break退出循环<br /> 当满足一定条件时,break可以退出整个循环<br /> 5.使用continue退出本次循环<br /> 当满足一定条件时,不再执行本次循环的剩余语句,跳出本次循环到下一次循环。 <br />

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

for循环可以有效遍历列表,但不能在这个过程中对列表进行修改,否则Python难以跟踪其中的元素。因此可以使用while。

7.3.1 在列表之间移动元素

  1. 配合pop()与append()
  1. arsenal = ["mesut", "cazorla" , "laurent"]
  2. new_signings = ["papa", "torreira"]
  3. while new_signings:
  4. player = new_signings.pop()
  5. print("welcome to Arsenal, " + player)
  6. arsenal.append(player)
  7. print(arsenal)

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

  1. 通过while循环多次执行remove(),达到删除特定值元素的目的。(因为remove()只能删除一个元素)
  1. arsenal = ["mesut", "cazorla" , "laurent", "mesut", "mesut"]
  2. while 'mesut' in arsenal: #in 成员运算符,返回值为True或False
  3. arsenal.remove('mesut')
  4. print(arsenal)

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

  1. arsenal = {}
  2. a = 0
  3. while a < 2:
  4. a = a + 1
  5. name = input("your name please ")
  6. number = input("your number please ")
  7. arsenal[name] = number
  8. print(arsenal)