elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Python (Moderador: Danielㅤ)
| | |-+  [python] Cadena de códigos
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 3 Ir Abajo Respuesta Imprimir
Autor Tema: [python] Cadena de códigos  (Leído 16,205 veces)
Meta


Desconectado Desconectado

Mensajes: 3.501



Ver Perfil WWW
[python] Cadena de códigos
« en: 4 Octubre 2010, 14:03 pm »

Hola gente:

Quiero poner de una pasada en el compilador netbeans una fila muy larga de código.

if a == 125 or b != 45 or c <= 345 or c == 175 or d >= 4578 or e <= 35:

Para reducir e intentado ponerlo de esta manera.

if a == 125 or b != 45 or c <= 345 or
c == 175 or d >= 4578 or e <= 35:

No funciona.

if a == 125 or b != 45 or c <= 345 +
or c == 175 or d >= 4578 or e <= 35:

No funciona.

if a == 125 or b != 45 or c <= 345,
or c == 175 or d >= 4578 or e <= 35:

Tampoco funciona.

¿Existe algún método para que funcione?

Saludo.


« Última modificación: 4 Octubre 2010, 14:21 pm por Novlucker » En línea

Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
Re: [python] Cadena de códigos
« Respuesta #1 en: 4 Octubre 2010, 14:41 pm »

No que yo sepa, pero no por netbeans sino por el tema de la indentación.

Saludos


En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
Meta


Desconectado Desconectado

Mensajes: 3.501



Ver Perfil WWW
Re: [python] Cadena de códigos
« Respuesta #2 en: 4 Octubre 2010, 14:44 pm »

Que raro que no se pueda, ya que otros lenguajes si se puede como C/C++/C#, etc...

Por ahora estaba hasta haciendo esto y tampoco es así.

Código
  1. # Introducir datos a la variable.
  2. Le = str(raw_input('Introduce cualquier carácter: '))
  3.  
  4. #
  5. if Le == 'A':
  6.    if Le == 'B':
  7.        if Le == 'C':
  8.            if Le == 'D':
  9.                if Le == 'E':
  10.                    if Le == 'F':
  11.                        if Le == 'G':
  12.                            if Le == 'H':
  13.                                if Le == 'I':
  14.                                    if Le == 'J':
  15.                                        if Le == 'K':
  16.                                            if Le == 'L':
  17.                                                if Le == 'M':
  18.                                                    if Le == 'N':
  19.                                                        if Le == 'Ñ':
  20.                                                            if Le == 'O':
  21.                                                                if Le == 'P':
  22.                                                                    if Le == 'Q':
  23.                                                                        if Le == 'R':
  24.                                                                            if Le == 'S':
  25.                                                                                if Le == 'T':
  26.                                                                                    if Le == 'U':
  27.                                                                                        if Le == 'V':
  28.                                                                                            if Le == 'X':
  29.                                                                                                if Le == 'Y':
  30.                                                                                                    if Le == 'Z':
  31.                                                                                                        print 'Es una MAYÚSCULA.'
En línea

Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
Re: [python] Cadena de códigos
« Respuesta #3 en: 4 Octubre 2010, 15:01 pm »

Es que en otros lenguajes no es obligatorio el indentar, sin embargo en python donde no lo hagas tienes warnings por todos lados :P

Sobre ese código, fijate que no va a funcionar nunca porque tienes los IF anidados, por lo cual en primera instancia se pregunta si es 'A', así que si no es 'A' entonces ya termina, pero si es 'A' luego preguntará si es 'B', y si es 'A' es imposible que también sea 'B', por lo que también termina.

No puedes hacer uso de otras funciones como ord por ejemplo? Sino a base de elif

Saludos
« Última modificación: 4 Octubre 2010, 15:04 pm por Novlucker » En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
d(-_-)b


Desconectado Desconectado

Mensajes: 1.331



Ver Perfil WWW
Re: [python] Cadena de códigos
« Respuesta #4 en: 4 Octubre 2010, 15:36 pm »

yo de python no entiendo ni pollo, pero creo que se lo que intentas hacer.

te pongo un ejemplo  en Delphi es algo similar, se que este subforo es de scripting, pero talvez este pequeño ejemplo te sirva de ayuda.

Código
  1. program project;
  2.  
  3. {$APPTYPE CONSOLE}
  4.  
  5. uses
  6.  SysUtils;
  7.  
  8. var
  9. Word: Char;
  10.  
  11. begin
  12.   Writeln('Inserte una leta');
  13.   Readln(Word);
  14.  
  15.   if (Word = 'A') then
  16.      Writeln('Inserto la letra en Mayusculas')
  17.  
  18.   else if (Word = 'a') then
  19.   Writeln('Inserto la letra en Minusculas')
  20.  
  21.  else
  22.   Writeln('Letra no valida...');
  23.   Readln;
  24. end.

saludos...
En línea

Max 400; caracteres restantes: 366
Meta


Desconectado Desconectado

Mensajes: 3.501



Ver Perfil WWW
Re: [python] Cadena de códigos
« Respuesta #5 en: 4 Octubre 2010, 15:57 pm »

Es así como dices en Pascal. Claro que son todo el abecesario a-Z y A-Z. ¿A que ya no es tan fácil?

« Última modificación: 4 Octubre 2010, 16:06 pm por Meta » En línea

Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
Re: [python] Cadena de códigos
« Respuesta #6 en: 4 Octubre 2010, 16:04 pm »

Yo más bien diría que fácil es, no es más que copiar el IF una vez por cada letra, el problema es que no es ni bonito ni cómodo :P

Saludos
En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
Meta


Desconectado Desconectado

Mensajes: 3.501



Ver Perfil WWW
Re: [python] Cadena de códigos
« Respuesta #7 en: 4 Octubre 2010, 16:06 pm »

Lo he intentado hacerlo así.

Código
  1. # Introducir datos a la variable.
  2. Letra = str(raw_input('Introduce cualquier car&#225;cter: '))
  3.  
  4. #
  5. if Letra <= 'Z':
  6.    print 'Es una MAY&#218;SCULA.'
  7. if Letra <= 'z':
  8.    print 'Es una MIN&#218;SCULA.'
  9.  

Si pulso 'T', me suelta este resultado activándome los dos print.
Citar
Introduce cualquier carácter: T
Es una MAYÚSCULA.
Es una MINÚSCULA.


Si pulso 't' me funciona bien. ¿Qué es lo que pasa?
Citar
Introduce cualquier carácter: t
Es una MINÚSCULA.
En línea

Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
Re: [python] Cadena de códigos
« Respuesta #8 en: 4 Octubre 2010, 16:15 pm »

Pasa que tienes las comparaciones por separado.
El valor de 'T' es 84 y el de 't' es 116, por lo que cuando realizas la comparación con 'T', se cumple que es menor que 90 (Z) y 122 (z), por lo que imprime dos veces.
Mejor así ...
Código
  1. Letra = raw_input('Introduce cualquier caracter: ')
  2. #el raw_input de por si devuelve una cadena
  3.  
  4. if Letra >= 'A' and Letra <= 'Z':
  5. print 'Es una MAYUSCULA'
  6.  
  7. if Letra >= 'a' and Letra <= 'z':
  8. print 'Es una MINUSCULA'

No había puesto eso antes porque no sabía si podías solucionar el problema de esa manera (por lo mismo pregunté por ord)

Saludos
En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
Meta


Desconectado Desconectado

Mensajes: 3.501



Ver Perfil WWW
Re: [python] Cadena de códigos
« Respuesta #9 en: 4 Octubre 2010, 16:28 pm »

Gracias.

Ah, otra cosa, la cadena ya la averigüé. Es así:

Código
  1. if a == 125 or b != 45 or c <= 345\
  2. or c == 175 or d >= 4578 or e <= 35:

Es bueno saber esto.



Pues tienes razón.

Lo de ord. ¿No será or? (sin la d al final.)
En línea

Páginas: [1] 2 3 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
error en cadena de texto en python
Scripting
iPeZ 5 4,521 Último mensaje 12 Enero 2011, 00:25 am
por iPeZ
Guardar numeros de cadena en variable[python]
Python
Ricardo95 2 6,988 Último mensaje 13 Junio 2011, 23:22 pm
por Ricardo95
[Python] - Script devuelva un cadena en forma de 'sms'
Python
Pryato 7 6,422 Último mensaje 30 Octubre 2013, 07:27 am
por 0x5d
[RESUELTO][PYTHON] Leccion strip() retorna una cadena
Scripting
LaThortilla (Effort) 5 3,110 Último mensaje 27 Marzo 2015, 00:41 am
por LaThortilla (Effort)
[Python 3.6] Como hacer que python lea una cadena especifica de un fichero?
Python
n1sen 5 4,748 Último mensaje 25 Septiembre 2017, 03:40 am
por engel lex
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines