Control día 07 Proceso

Alma tres preguntas:

¿Qué es? ¿Por qué debería haber? Modo de empleo?

Una estructura de ramas

1.1 ¿Cuál es la estructura de las ramas

Es decir, para llevar a cabo diferentes sub-código basado en las condiciones verdaderas y falsas

1.2 ¿Por qué tienen una estructura de ramas

Cuando tenemos que hacer cosas diferentes dependiendo de las condiciones, tales como: lluvia de hoy, tomo un paraguas, no llueve hoy, no tomo un paraguas

1.3 cómo utilizar la estructura de las ramas

1.3.1 Si la gramática

if 条件1:   # 如果条件1的结果为True,就依次执行:代码1、代码2,......
   代码1
    代码2
    ......
elif 条件2: # 如果条件2的结果为True,就依次执行:代码3、代码4,......
   代码3
    代码4
    ......
else:     # 其它情况,就依次执行:代码7、代码8,......
    代码7
    代码8
    ......
# 注意:
# 1、python用相同缩进(4个空格表示一个缩进)来标识一组代码块,同一组代码会自上而下依次运行
# 2、条件可以是任意表达式,但执行结果必须为布尔类型
# 2.1在if判断中所有的数据类型也都会自动转换成布尔类型
# 2.2、None,0,空(空字符串,空列表,空字典等)三种情况下转换成的布尔值为False
# 2.3、其余均为True 

A continuación, utilice un anidado si para demostrar el uso avanzado, cuando necesitamos una condición como requisito previo, si necesitamos más escenarios para representar diferentes de anidación

#我们需要对90分以上的男生和女生做不同奖励,对80分以下的男生女生做不同惩罚
result = int(input("请输入你的成绩"))
sex = input("请输入你的性别")
if result>90:
    if sex == "boy":
        print("棒棒糖")
    else:
        print("冰激凌")
else:
    if sex == "boy":
        print("eat shit")
    else:
        print("get scolding")

Contenido extendida: profundidad de una copia

Cuando necesitamos dos de la misma lista de contenidos que desea modificar sin afectar el funcionamiento de otra lista

copia superficial: la lista original es la dirección de memoria de la primera capa sin distinción una copia directamente a la nueva lista.

En este caso, modificamos tipo inmutable en la lista original, una nueva lista no cambiará

Modificar la lista original de los tipos de variables, una nueva lista cambiará en consecuencia

a = [
    'aa','bb',[1111]
]
b=a.copy()
print(id(a))
print(id(b))
>>>1729418126024
>>>1729419377288
a[2][0]=123
print(a)
print(b)
>>>['aa', 'bb', [123]]
>>>['aa', 'bb', [123]]

copia profunda: tipo inmutable poco profunda copia del modo de copia y como

tipo de variable, se abrirá un nuevo espacio en la memoria

a = [
    'aa','bb',[111]
]
import copy
b = copy.deepcopy(a)
print(id(a))
print(id(b))
>>>2172376474312
>>>2172379870920
a[2][0]=222
print(a)
print(b)
>>>['aa', 'bb', [222]]
>>>['aa', 'bb', [111]]

Conclusión, aunque sólo operaciones de sólo lectura, copia de uso poco profunda, si desea escribir, con una copia profunda

La estructura de dos ciclos

ciclo 2.1while

Funcionamiento básico: Salida 1-4

i= 1
while i<5:#i<5是while执行子代码的条件,在执行完一次循环后回到开头重新进行判断
    print(i)
    i+=1

Funcionamiento avanzado: determinar la operación de inicio de sesión de usuario

username = "hz"
password = "123"
tag = True
while tag:
    name = input("请输入你的用户名:")
    word = input("请输入你的密码:")
    if name==username and word == password:
        print("登录成功")
        tag = False
    else:
        print("账号或密码错误")
    print("————end————")

Dos maneras de terminar el ciclo

#第一种,直接把循环条件改为假,在执行完本层循环后结束循环
while tag=True
    tag=False
    print("1")
#第二种,break,在break后面的代码不执行,直接跳出循环
while True
    break
    print("1")

Saltar presente ciclo

i = 0
while i<5:
    i += 1
    if i == 2:
        continue #跳出本次循环,执行下一次循环
    print(i)

mientras que se utiliza junto con otro

i = 0
while i<5:
    i += 1
    if i == 2:
        continue
    print(i)
else:
    print("hz is dsg")
#执行else代码的条件:while循环结束后且没有被break打断的情况

Supongo que te gusta

Origin www.cnblogs.com/hz2lxt/p/12449529.html
Recomendado
Clasificación