2012-02-08 19 views
32

Acaba de empezar a figurar a Python. He leído esta pregunta y sus respuestas:¿Las llaves en Python?

Is it true that I can't use curly braces in Python?

y todavía no puedo entender cómo funciona llaves, especialmente desde páginas como programas sencillos:

http://wiki.python.org/moin/SimplePrograms

utilizar llaves por todo el lugar. Entiendo los corchetes y los paréntesis curvos regulares, pero no sé lo que significa "definir diccionarios" o lo que se supone que representan.

+15

'de __future__ braces' importación – robert

+2

Usted realmente debe pasar por el [Tutorial] (http://docs.python.org/py3k/tutorial/). –

Respuesta

62

"Curly Braces" se utilizan en Python para definir un diccionario. Un diccionario es una estructura de datos que mapea un valor a otro, algo así como la forma en que un diccionario de inglés asigna una palabra a su definición.

Python:

dict = { 
    "a" : "Apple", 
    "b" : "Banana", 
} 

También se utilizan para las cadenas de formato, en lugar del viejo estilo C utilizando%, como:

ds = ['a', 'b', 'c', 'd'] 
x = ['has_{} 1'.format(d) for d in ds] 

print x 

['has_a 1', 'has_b 1', 'has_c 1', 'has_d 1'] 

No se utilizan para referirse a los bloques de código, ya que son en muchos lenguajes tipo "C".

C:

if (condition) { 
    // do this 
} 
4

Los diccionarios en Python son estructuras de datos que almacenan pares clave-valor. Puede usarlos como matrices asociativas. Las llaves se utilizan cuando se declaran los diccionarios:

d = {'One': 1, 'Two' : 2, 'Three' : 3 } 
print d['Two'] # prints "2" 

llaves no se utilizan para indicar los niveles de control en Python. En cambio, Python usa sangría para este propósito.

Creo que realmente necesita algunos buenos recursos para aprender Python en general. Ver https://stackoverflow.com/q/175001/10077

+0

He estado trabajando en Learn Python the Hard Way (que aparentemente es un poco controvertido), y he llegado al capítulo donde se supone que debo descargar, imprimir y simplemente leer el código. Sigo corriendo a través de cosas que no sé, y las llaves son lo único que no puedo entender cuando las busco ... de ahí la pregunta. – JeanSibelius

+0

@mattshepherd: Tal vez haga honor a su nombre. 8v) En serio, sin embargo, el [Tutorial de Python] (http://docs.python.org/py3k/tutorial/) (como el relacionado con Michael J. Barber) es muy bueno. Puede intentarlo. –

0

Un diccionario es algo así como una matriz que se accede por teclas (por ejemplo, cadenas ...) en lugar de sólo números secuenciales llanura. Contiene pares de clave/valor, puede buscar valores usando una clave como usar una libreta de teléfonos: clave = nombre, número = valor.

Para la definición de un diccionario de este tipo, se utiliza esta sintaxis que se utilizan llaves, ver también: http://wiki.python.org/moin/SimplePrograms

8

En lenguajes como C llaves ({}) se utilizan para crear bloques de programa utilizados en el control de flujo. En Python, las llaves se usan para definir una estructura de datos llamada diccionario (una asignación de clave/valor), mientras que la sangría de espacio en blanco se usa para definir bloques de programa.

14

En Python, las llaves se utilizan para definir un diccionario.

a={'one':1, 'two':2, 'three':3} 
a['one']=1 
a['three']=3 

En otros idiomas, {} se utilizan como parte del control de flujo. Sin embargo, Python usó la sangría como su control de flujo debido a su enfoque en el código legible.

for entry in entries: 
    code.... 

Hay un pequeño huevo de pascua en Python cuando se trata de aparatos ortopédicos.Intenta ejecutar esto en Python Shell y disfruta.

from __future__ import braces