Operadores de comparación de Python
Operadores de comparación de Python | sentido |
---|---|
> | La izquierda es mayor que la derecha |
> = | La izquierda es mayor o igual que la derecha |
< | La izquierda es más pequeña que la derecha |
<= | La izquierda es menor o igual que la derecha |
== | La izquierda es igual a la derecha |
! = | La izquierda no es igual a la derecha |
Rama condicional
Sintaxis de la rama condicional de Python
condición if:
la operación realizada si la condición es verdadera (Verdadero)
condición else: la operación realizada si la
condición es falsa (Falso)
Mientras bucle
El programa debe brindar múltiples oportunidades para que los usuarios adivinen. Profesionalmente, el programa necesita ejecutar código repetidamente
Sintaxis del bucle while de Python
Condición while :
La operación realizada cuando la condición es verdadera (Verdadero).
Esto se debe a que el ciclo se está ejecutando todo el tiempo, por lo que el programa sigue mostrando "amigo, es grande!"
De esta manera, el ciclo terminará solo cuando el usuario ingrese la respuesta correcta, y esperamos tener un límite en el número de veces. Por ejemplo, cuando el usuario adivina
incorrectamente tres veces seguidas, el programa terminará. El ejemplo de arriba es el error, que se repetirá 4 veces. Debería comenzar por el principio Solo juzgue, lo correcto es el siguiente: en el tiempo de inicio <3 ejecuta el bucle, porque la última vez + 1, que ha llegado a tres ciclos
Suplemento En Python, solo el siguiente contenido se considerará falso (el nuevo bloguero de la copia, Diandian, ama a Fengfeng)
[1] (Tenga en cuenta que no hay nada entre los dos puntos o los corchetes, ni siquiera los espacios): Falso Ninguno 0 “” '' () [] {}
[2] Falso en el colon se reconoce directamente como falso
[3] 0 y None se considerarán directamente falsos
y / o operador lógico
Cuando el número de conjeturas anterior está limitado a no más de tres veces, se
usa el operador lógico y . El operador lógico y puede conectar cualquier expresión y obtener
la prioridad de un operador de comparación de valor de tipo booleano (Verdadero / Flase) Es mayor que
el contenido en el operador lógico (),
y el operador lógico se ejecuta primero . Solo cuando los lados izquierdo y derecho son Verdaderos al mismo tiempo, el resultado es Verdadero
o el operador lógico tiene uno a la izquierda y el derecho es Verdadero , y el resultado es verdadero
Introducir ayuda exterior
Dado que la respuesta estándar del programa anterior es fija, entonces A le dirá a B si lo sabe, entonces el juego no tiene sentido. En este momento, es necesario introducir ayuda externa para que la respuesta generada al ejecutar el programa sea aleatoria cada vez
módulo aleatorio
¿Qué es un módulo? El programa que escribimos cada vez es en realidad un módulo independiente. Python proporciona muchos módulos que se pueden importar al
módulo aleatorio. Hay una función llamada randint (a, b) . Ta devolverá un entero aleatorio ab.
Primero, impórtelo en la parte superior del programa. Ayuda extranjera, utilice importación
Tarea
1. ¿Cuántas veces imprimirá el siguiente código "Me encanta pdd"?
while 'C':
print('我爱pdd')
R: Innumerables veces, debido a que la condición del ciclo CTRL + C (final forzado) no está limitada
, la razón del ciclo infinito es que la condición después del tiempo siempre es verdadera (Verdadero). En Python, solo se considerará el siguiente contenido falso
while '':
print('进入循环')
print('退出循环')
while False:
print('进入循环')
print('退出循环')
while 0:
print('进入循环')
print('退出循环')
Esto explica por qué el ciclo while se puede usar directamente así: no se ejecuta cuando i = i-1 es cero
while i:
2. ¿Cuántas veces imprimirá el siguiente código "Me encanta pdd"?
i = 10
while i:
print('我爱pdd')
i = i - 1
R: Se imprimirá 10 veces
3. Escriba una expresión equivalente a 10 <costo <50
A: costo> 10 y costo <50
4. En Python3, ¿se pueden escribir varias declaraciones en una línea?
Sí, puede usar punto y coma para separar declaraciones , como >>> print ('Me encanta fishc'); print ('muchísimo!')
5. En Python3, ¿se puede escribir una declaración en varias líneas?
Sí, una declaración larga se puede dividir en varias líneas usando barras invertidas o paréntesis
>>> 3 > 4 and \
1 < 2
>>> ( 3 > 4 and
1 < 2 )
6. ¿Cuál es la diferencia entre el operador and de Python y el operador && del lenguaje C? [Esta pregunta está dirigida a amigos con una base C o C ++ ]
7. ¿Ha oído hablar de la "lógica de cortocircuito"?
Los operadores lógicos tienen una característica interesante: no realizan operaciones cuando no necesitan ser evaluados. Puede ser más "avanzado" decir esto. Por ejemplo, las expresiones xey requieren que ambas variables xey sean verdaderas al mismo tiempo, y el resultado es verdadero. Por lo tanto, si se sabe que la variable x es False, la expresión devolverá False inmediatamente, independientemente del valor de la variable y.
Este comportamiento se llama lógica de cortocircuito o evaluación perezosa . Este comportamiento también se aplica al operador o.
De hecho, el enfoque de Python es que si x es falso, la expresión devolverá el valor de x (0); de lo contrario, devolverá el valor de y.
Todavía hay dudas sobre el conector lógico y. Por ejemplo, 1 y 3 salida 3 debido a la comparación?
Verdadero = 1, Falso = 0
8. Intente lograr La siguiente función de captura de pantalla
Ejemplo de error:
Análisis: las cadenas y los números no se pueden comparar; la comprensión del ciclo while es incorrecta, el código mejoré por mí mismo:
ask = input('请输入一个整数:')
asks = int(ask)
i = 1
i = int(i)
while i <= asks:
print(i)
i = i + 1
i = int(i)
Código de pescado c:
temp = input('请输入一个整数:')
number = int(temp)
i = 1
while number:
print(i)
i = i + 1
number = number - 1
9. Use el código para lograr la siguiente función de captura de pantalla
Mi código: (es incorrecto, porque no hay sangría)
temp = input('请输入一个整数:')
ask = int(temp)
i = 1
i = int(i)
while i <= ask:
out = "*" * ask
print(out)
ask = ask - 1
Después de mejorar mi propio código (agregando espacios): todavía está mal, porque el número de espacios antes de * es uno menos que el número de ✳
temp = input('请输入一个整数:')
ask = int(temp)
i = 1
i = int(i)
while i <= ask:
out = "*" * ask
blank = " " * ask
print(blank + out)
ask = ask - 1
Código mejorado de nuevo:
temp = input('请输入一个整数:')
ask = int(temp)
i = 1
i = int(i)
while i <= ask:
num = ask - 1
out = "*" * ask
blank = " " * num
print(blank + out)
ask = ask - 1
Código de pescado c:
temp = input('请输入一个整数:')
number = int(temp)
while number:
i = number - 1
while i:
print(' ', end = '')
i = i - 1
j = number
while j:
print('*', end = '')
j = j - 1
print()
number = number - 1
Código de pregunta:
print(' ', end = '')
print()