La última base de entrada de Python y el Capítulo 3 de combate real si se ramifican y bucles

Conceptos básicos de entrada de Python tres if branch and loop

============================= Si estructura de rama
if-elif-else

Escenario de aplicación: Realice diferentes operaciones para diferentes condiciones. (Se cumplen diferentes condiciones: si se cumple una de las condiciones, no hay necesidad de juzgar otras condiciones)
Sintaxis:
if declaración condicional 1:
segmento de código 1
declaración condicional elif 2:
segmento de código 2
declaración condicional elif 3:
segmento de código 3
… De lo
contrario:
segmento de código N

Nota: La última condición se juzga sobre la premisa de que la primera condición no está establecida.

Ejercicio: Se requiere realizar diferentes operaciones en num y 2 según el símbolo del símbolo. Por ejemplo, si el símbolo es '+' -> num, sumar 2; '-' -> num restará 2; ' ' -> num 2, a su vez Por analogía,
si el símbolo no es una operación matemática, el mensaje "¡no se puede operar!" 'Rápido

symbol = 'hshs'
num = 20
is_operate = True    # 当前数据是否已经操作
if symbol == '+':
    num += 2
elif symbol == '-':
    num -= 2
elif symbol == '*':
    num *= 2
elif symbol == '/':
    num /= 2
elif symbol == '//':
    num //= 2
elif symbol == '%':
    num %= 2
elif symbol == '**':
    num **= 2
else:
    is_operate = False
    print('不能操作!')
================================== si está anidado
1. si está anidado
Hay otras declaraciones if en la declaración if

if declaración condicional:
if declaración condicional:
segmento de código
else:
segmento de código
else:
segmento de código

Ejercicio: si num es impar, imprima el número impar; de lo contrario, imprima el número par. Si el dígito de las unidades es 0, imprima 'múltiplo de 10'

num = '5'
if num % 2 == 0:
    print('偶数')
    if num % 10 == 0:
        print('10的倍数')
else:
    print('奇数')
2. Operador ternario
  1. El operador de tres maderas de C:

Expresión 1? Expresión 2: Expresión 3

  • Determine si el valor de la expresión 1 es verdadero, si es verdadero, el resultado de toda la operación es la expresión 2; de lo contrario, el resultado de toda la operación es la expresión 3
int result = 10>20?30:40
printf(&result)
  1. Operador ternario de Python:

Expresión 2 si expresión 1 si no expresión 3

  • Determine si el valor de la expresión 1 es Verdadero, si es Verdadero, el resultado de toda la operación es la expresión 2; de lo contrario, el resultado de toda la operación es la expresión 3
result = 30 if 100>20 else 40
print(result)

Práctica: Escriba adulto o menor según el valor de la edad (completo con operador ternario)

age = 19
print('成年' if age>18 else '未成年')
================================= para bucle

La función del bucle: dejar que el código se ejecute repetidamente

en bucle
  • Sintaxis:
    para variable en secuencia:
    cuerpo del bucle

Descripción:

  1. para palabra clave; escritura fija
  2. Variable: los requisitos y especificaciones del nombre de la variable son los mismos que cuando se define la variable; (si esta variable no se usa en el cuerpo del ciclo, el nombre de la variable se puede reemplazar por _)
  3. in-keyword; escritura fija
  4. Tipos de datos de contenedor de secuencia en Python, como cadenas, listas, tuplas, conjuntos, diccionarios, iteradores, generadores, rangos, etc.
  5. : -Escritura fija
  6. Cuerpo del bucle: una o más declaraciones con sangría para; código que debe ejecutarse repetidamente

Proceso de ejecución:
Dejar que las variables tomen valores en la secuencia, tomarlos uno por uno, hasta que se tome el final, y ejecutar el cuerpo del ciclo cada vez que se tome un valor.
(El número de ejecuciones del bucle for depende del número de elementos de la secuencia)

for x in 'abc':
    print(x, 'hello world!')
2. Función de rango: genera una secuencia de números en un rango específico

rango (N) -Generar una secuencia numérica de [0, N) (N es un entero positivo); por ejemplo: rango (4) -Generar una secuencia numérica de 0, 1, 2, 3
rango (M, N) -Generar un [M , N) secuencia numérica (M <N, y M y N son números enteros); por ejemplo: rango (-3, 3) -produce: -3, -2, -1, 0, 1, 2
rango (M, N , paso) -Generar una secuencia numérica de [M, N), cada vez que el valor se incrementa por paso; por ejemplo: rango (-3, 3, 2) -Generar: -3, -1, 1

  • Aplicación: Imprima 100 líneas de "¡hola mundo!"
for _ in range(100):
    print('HELLO WORLD!')

for x in range(4):        #打印出0-3的数字
    print('x1:', x)
  • Ejercicio 2
for x in range(-3, 3):
    print('x2:', x)

for x in range(-3, 3, 2):
    print('x3:', x)

for x in range(100, 49, -1):
    print('x4:', x)

Ejercicio 1: Calcule la suma de 1 + 2 + 3 + 4 +… + 100

sum1 = 0
for x in range(1, 101):
    sum1 += x
print('和:', sum1)
  • Análisis del proceso en ejecución:

suma1 = 0
(x -> 1 ~ 100)
x = 1: suma1 + = x -> suma1 = suma1 + x -> suma1 = 0 + 1 = 1
x = 2: suma1 + = x -> suma1 = suma1 + x -> suma1 = 1 + 2
x = 3: suma1 + = x -> suma1 = suma1 + x -> suma1 = 1 + 2 + 3
x = 4: suma1 = 1 + 2 + 3 + 4

x = 100: suma1 = 1 + 2 + 3 + 4 +… + 100

imprimir (suma1) -> imprimir (5050)

Ejercicio 2: cuente el número de números dentro de 1000 que pueden ser divisibles por 3

método uno:

count = 0   # 保存最终的个数
for x in range(1000):
    if x % 3 == 0:
        count += 1
print('个数:', count)

Método dos:

count = 0
for x in range(0, 1000, 3):
    count += 1
print('个数:', count)

Ejercicio 3: imprima todos los números dentro de 1000 que sean divisibles por 3 y cuyo único dígito sea 2

método uno:

for x in range(1000):
    if x % 3 == 0 and x % 10 == 2:
        print(x, end=' ')
print()

Método 2: Primero genere todos los múltiplos de 3 dentro de 1000, y luego vea de quién es el dígito 2 en los múltiplos de 3

for x in range(0, 1000, 3):
    if x % 10 == 2:
        print(x, end=' ')
print()

Método 3: Primero genere todos los números con un solo dígito de 2 dentro de 1000, y luego vea cuál de los números con un solo dígito de 2 es divisible por 3

for x in range(2, 1000, 10):
    if x % 3 == 0:
        print(x, end=' ')
print()
================================= Mientras que bucle
1 bucle mientras

Sintaxis:
sentencia condicional
while : cuerpo del bucle

  • Descripción:

1) palabra clave while; escritura fija
2) sentencia condicional: cualquier expresión con un resultado está bien (la sentencia de asignación no funciona)
3): - escritura fija
4) cuerpo del bucle: mantenga una o más sentencias sangradas con while ; Código que debe ejecutarse repetidamente

  • Proceso de implementación:

Primero juzgue si la declaración condicional es Verdadera, si lo es, ejecute el cuerpo del bucle y luego juzgue si la declaración condicional es
Verdadera después de la ejecución ; si es Verdadero, ejecute el cuerpo del bucle nuevamente, y luego juzgue si la declaración condicional es Verdadera después de la ejecución ...
y así sucesivamente, si la declaración condicional es El resultado es final de bucle falso

  • Ejercicio: Imprime '¡hola mundo!' 5 veces
x = 0
while x < 5:
    print('hello world!')
    x += 1

Proceso de implementación:

x = 0
mientras 0 <5: print ('¡hola mundo!'); x + = 1 -> x = 0 + 1 = 1
while 1 <5: print ('¡hola mundo!'); x + = 1 -> x = 1 + 1 = 2
while 2 <5: print ('¡hola mundo!'); x + = 1 -> x = 2 + 1 = 3
while 3 <5: print ('¡hola mundo!'); x + = 1 -> x = 3 + 1 = 4
mientras 4 <5: print ('¡hola mundo!'); x + = 1 -> x = 4 + 1 = 5
mientras que 5 <5: 循环 结束!

2. La elección de bucle for y bucle while

Si el número de bucles es seguro, use el bucle for; si el número de bucles es incierto, use el bucle while

Ejercicio: escriba un programa para permitir que el cliente siga ingresando contenido hasta que el contenido de entrada sea 0

Análisis de ideas:

Necesitamos seguir ingresando números, y los números ingresados ​​son inciertos, y el código debe ejecutarse repetidamente en posiciones, como:

Por favor ingrese: 2
Por favor ingrese: a
Por favor ingrese: acc
Por favor ingrese: 0

El número es 0, finaliza el ciclo

num = 'start'
while num !='0':
    num = input('请输入:')

Supongo que te gusta

Origin blog.csdn.net/SaharaLater/article/details/111057022
Recomendado
Clasificación