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

 

 


Tema destacado: Introducción a la Factorización De Semiprimos (RSA)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Duda muy básica
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Duda muy básica  (Leído 1,614 veces)
jeanbkn

Desconectado Desconectado

Mensajes: 17


Ver Perfil
Duda muy básica
« en: 7 Febrero 2015, 16:48 pm »

Hola, digamos que soy nuevo en programación, he querido empezar con python, la verdad es que no me atrae mucho ir leyendome tutoriales, creo que soy mejor analizando códigos, aprendo más...

He querido contar los números del 1 al 30, pero que esten separados por y sólo una coma, sin espacios entre medio, y no lo puedo lograr jajaja, no sé por qué

Este código me funciona, sin embargo los numerillos me salen " 1, 2, 3, 4" (La idea es que salga sin espacios)
Código:
x=1
while x<=30
 print x
 print ","
 x=x+1
luego viendo otros códigos intente probar este, pero ni idea de por qué no me funciona:
Código:
x=1

while x<=21:
 print x
 print ","
 x=x+1

def Replace(string):
 string= string.replace(" ","")
 return string

string = x
print replace(string)

PD: Hay algun grupo de usuarios o comunidad interesada aprender SQL o algún lenguaje de programación? , pienso que aprender sólo es bastante aburrido, seria interesante tener alguien más con quien hablar y compartir xD

Saludos


En línea

GonzaFz

Desconectado Desconectado

Mensajes: 69


Ver Perfil WWW
Re: Duda muy básica
« Respuesta #1 en: 7 Febrero 2015, 17:13 pm »

Debes colocar una coma al final del print para indicar que sigue en la misma linea.
Código
  1. x = 1
  2. while x <= 30:
  3. print x,
  4. x += 1
  5.  

Un tip de programacion:
Cuando vas a iterar una cantidad de veces determinada, o mejor dicho conocida antes de iniciar el bucle, se recomienda usar "for":
Código
  1. for x in range(1, 30):
  2. print x,
  3.  

La funcion range(start, stop[, step]) https://docs.python.org/2/library/functions.html#range crea una lista que empieza en start, finaliza en stop y avanza tanto como step indique.
Si pasas un solo argumento sera stop, y start comenzara automaticamente en 0.
Si pasas dos argumentos el primero será start, el segundo stop.
Si pasas tres argumentos sera como el anterior nada mas que el ultimo indicara cuanto avanzar.


« Última modificación: 7 Febrero 2015, 17:24 pm por GonzaFz » En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.878



Ver Perfil
Re: Duda muy básica
« Respuesta #2 en: 7 Febrero 2015, 17:45 pm »

También puedes hacerlo de esta manera, usando la función join para concatenar los elementos de la lista usando el string especificado:

Código
  1. values = range(1, 31)
  2. print ','.join(map(str, values))

Output:
Código:
1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30

Edito: Obviamente si lo prefieres puedes utilizar la secuencia directamente, te lo he escrito así para denotar la diferencia entre los datatypes, ya que estás aprendiendo.

Saludos.
« Última modificación: 7 Febrero 2015, 17:55 pm por Eleкtro » En línea



Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
duda basica
PHP
cuerty 3 2,583 Último mensaje 17 Agosto 2008, 05:53 am
por coolfrog
Duda muy básica
PHP
HJ ~ 3 2,854 Último mensaje 28 Diciembre 2009, 01:00 am
por jdc
Duda básica
Redes
leogtz 9 5,290 Último mensaje 1 Marzo 2011, 11:58 am
por madpitbull_99
Duda básica en C++ « 1 2 »
Programación C/C++
dorkam 10 6,062 Último mensaje 6 Junio 2013, 19:40 pm
por dorkam
Introducción basica al maldev
Análisis y Diseño de Malware
D3s0rd3n 5 17,561 Último mensaje 22 Diciembre 2023, 04:44 am
por D3s0rd3n
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines