valor usar una recorrer listas lista elementos ejemplo diccionario buscar anidadas agregar python

usar - recorrer diccionario python



¿Es cierto que no puedo usar llaves en Python? (12)

Como han mencionado otros, estás en lo correcto, sin llaves en Python. Además, no tiene fin o endif o endfor ni nada por el estilo (como en pascal o ruby). Todos los bloques de código están basados ​​en sangrías.

Estaba leyendo que Python hace todos sus "bloques de código" por sangría, en lugar de con llaves. ¿Está bien? Entonces, ¿las funciones, las si y cosas así aparecen sin rodear su bloque con llaves?


Correcto para los bloques de código. Sin embargo, define diccionarios en Python con llaves:

a_dict = { ''key'': ''value'', }

Ahhhhhh.


En Python, cuatro espacios ( ) se utilizan para la sangría en lugar de llaves ( { ). Sin embargo, las llaves se usan en pocos lugares en Python que tienen un propósito diferente:

  1. Inicialice un conjunto no vacío (colección no ordenada de elementos únicos):

    fuitBasket = {''apple'', ''orange'', ''apple'', ''pear'', ''orange'', ''banana''}

    Citation

  2. Inicialice un diccionario vacío (pares clave-valor):

    telephoneNumbers = {}

  3. Inicialice un diccionario no vacío (pares clave-valor):

    telephoneNumbers = {''jack'': 4098, ''sape'': 4139}

    Citation


Puede intentar agregar soporte para llaves utilizando una instrucción de importación futura , pero aún no es compatible, por lo que obtendrá un error de sintaxis:

>>> from __future__ import braces File "<stdin>", line 1 SyntaxError: not a chance


Python no usa llaves para bloques de código:

>>> while True { File "<stdin>", line 1 while True { ^ SyntaxError: invalid syntax >>> from __future__ import braces File "<stdin>", line 1 SyntaxError: not a chance

(Observe el mensaje "no es una oportunidad" - este es un huevo de Pascua que refleja esta decisión de diseño.)

Como lenguaje diseñado para ser fácil de usar y leer, Python usa dos puntos y una sangría para designar bloques de código. La definición de bloques de código por indentación es inusual y puede sorprender a los programadores que están acostumbrados a lenguajes como C ++ y C # porque a estos (y muchos otros idiomas) no les importan los espacios en blanco o las sangrías adicionales. Esta regla pretende aumentar la legibilidad del código de Python, a costa de la libertad del programador de usar cantidades variables de espacios en blanco.

Un aumento en el nivel de sangría indica el inicio de un bloque de código, mientras que una disminución indica el final del bloque de código. Por convención, cada sangría tiene cuatro espacios de ancho.

Aquí hay un ejemplo simple que suma todos los números enteros de 0 a 9. Tenga en cuenta que los rangos en Python incluyen el primer valor, hasta pero sin incluir el último valor:

j = 0 for i in range(0, 10): j += i print(j)


Sí, los bloques de código en Python se definen por su sangría. Los creadores de Python estaban muy interesados ​​en el código de auto-documentación. Incluyeron la sangría en la sintaxis como una forma de aplicar innatamente una buena práctica de formato.

Programé en Python por unos años y me encariñé bastante con la estructura de su código porque realmente es más fácil. ¿Alguna vez ha omitido un corsé de cierre en un programa grande y pasó horas tratando de encontrarlo? No es un problema en Python. Cuando dejé ese trabajo y tuve que empezar a usar PHP, realmente me perdí la sintaxis de Python.


Sí. Las llaves no se usan. En su lugar, usa el símbolo : para introducir nuevos bloques, como ese:

if True: do_something() something_else() else: something()


Sí.

if True: #dosomething else: #dosomething else #continue on with whatever you were doing

Básicamente, donde sea que haya tenido una llave de apertura, use dos puntos en su lugar. Unindent para cerrar la región. No toma mucho tiempo para que se sienta completamente natural.


Sip :)

Y hay (por lo general) una diferencia entre 4 espacios y una pestaña, así que asegúrese de estandarizar el uso.



Python with Braces es una variante de python que te permite hacer exactamente eso. Es un proyecto en el que he estado trabajando últimamente junto con mi amigo.


if foo: #{ print "it''s true" #} else: #{ print "it''s false!" #}

(Obviamente, esto es una broma).