Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - Lopi

#1
Scripting / Manual de Iniciación Python
25 Mayo 2005, 21:08 PM
----------------------------------------------------------------------------------

Esta guía está destinada para aquel que quiera iniciarse en la programación y eliga como vehiculo python, para gente que ya conozca este lenguaje u otros algunas cosas les parecerá un poco "chorras", pero es para crear una base.

Si está miniguía tiene algún fallo, algo que no os guste y tal, comentadlo tranquilamente que aquí estamos para ayudarnos unos a otros.

----------------------------------------------------------------------------------

Python es un lenguaje interpretado por lo cual tenemos la ventaja de que nuestros programas pueden ser ejecutados en casi todas las plataformas(windows, linux, unix, etc...)
La mayoria de las distribuciones de linux vienen en sus CDs con alguna versión de python, y en mac os creo tener entendido que en las ultimas versiones ya está incluido el interprete python, pero en windows no.
Para bajaros el interprete python:
http://www.python.org/download/

-------------------------------------------------------------------------------
ENTRADA Y SALIDA DE DATOS
[/b]

Empezamos por lo que yo considero casi lo fundamental en cualquier tipo de lenguaje: las entradas y salidas de datos.
En python hay dos funciones, las salidas de datos están representadas en la función "print"
           
         ej: print 'Hola mundo!'
Y las salidas de datos están representadas por la función "raw_input" :
     
        ej: variable = raw_input() (El tema de variables se explicará a continuación)

Fácil no?, pues ahora vamos con las variables y los tipos de datos :)

---------------------------------------------------------------------------
VARIABLES Y TIPOS DE DATOS

En cualquier lenguaje de programación los datos pueden estar almacenados o bien en variables o en constantes. Cuando un dato esta en una constante es que su valor no va a cambiar a lo largo de la ejecución del programa, mientras que el de la variable SI

Existen varios tipos de datos pero con los que más se trabaja son con los enteros flotantes y carácteres.

    Entero: -3 , -2 , -1 , 1 , 2 , 3 ...
    Flotante: -1.17 , 1.17 ...
    Caracter: a , t , 5a4 , x ...

Equivalencias:
   
    Entero: -> int
    Flotante: -> float
    Caracter: -> char

Ahi van dos ejemplitos :):

    print '¿Cúantos años tienes?'
    edad = raw_input()
    ó
    edad = int(raw_input() )
    print '¿Cómo te llamas?'
    nombre = raw_input()
    ó
    nombre = char(raw_input() )

Ahora explicamos parte por parte, podemos ver dos print en el que hacemos la pregunta de la edad y del nombre,y a continuación las entradas de datos mediante la funcion raw_input, como podeis observar en una NO indicas que tipo de dato es y en otra SI.
Es fácil, en python no hay que especificar que dato es, por que el interprete se encarga de mirar si el dato almacenado es un entero o flotante o caracter, aunque puedes forzar a que tome por ese tipo de dato, un ejemplo:

   print 'Introduce el número en cuestión'
   numero = float(raw_input() )

Si introducimos por ejemplo el número 5, aunque sea un entero lo tomará como flotante y por tanto devolverá el valor de numero como 5.0

---------------------------------------------------------------------------
RELACIONES ENTRE EXPRESIONES

Suma: +
Resta: -
Division: /
Producto: *
Potencia: ^ ó **

Y: and
NO: not
O: or

< : menor que
> : mayor que
== : igual que
<= : menor o igual que
>= : mayor o igual que
!= : distinto de

----------------------------------------------------------------------------
MOSTRAR EL CONTENIDO DE UNA VARIABLE EN PRINT

A veces nos interesa mostrar los datos almacenados en alguna variable o constante, para ello utilizaremos print :)

Ejemplo:
   
    print '¿Cómo te llamas?'
    nombre = raw_input()
    print '¿Cómo te apellidas?'
    apellido = raw_input()
    print 'Nombre:', nombre, 'apellido:', apellido
    ó
    print 'Nombre: %s Apellido: %s' %(nombre,apellido)

--------------------------------------------------------------------------
ESTRUCTURAS BASICAS Y ESENCIALES

Condicional Simple:

if condicion :
    acciones
else:
    acciones

Condicional Multiple:

if condicion :
    acciones
elif condicion
    acciones
elif condicion
    acciones
...
else:
    acciones(sino se cumple ninguna de las anteriores condiciones)

Repeticion:

while condicion:
    acciones
(si la condición se cumple siempre será un bucle infinito)

Repeticion y contadores:

for contador in range(inicio,fin):
    acciones
(Este bucle se iniciará fin-inicio veces. A cada vuelta el valor de la variable contador incrementará en una unidad hasta fin-1

for contador in range(fin,inicio,-1):
    acciones
(Este bucle hara que el valor de la variable contador disminuya. Podemos observar como va primero fin antes que inicio debido a que la variable fin debe de ser mayor que la variable inicio, sino el bucle no se ejecutará. A cada vuelta el valor de la variable contador disminuirá en una unidad desde fin -1 hasta inicio.

-----------------------------------------------------------------------------
FUNCIONES

En cualquier lenguaje de programación las fucniones son unas de las principales herramientas para el programador, en python usamos "def" para declararlas:
Ejemplo:

     def nombredelafuncion(valores):
           acciones para los valores
           return valores

Un ejemplo más claro y practico, una función que determine cual es el máximo valor:

     def numeromayor(numero1,numero2):
         if numero1 > numero2:
         maximo = numero1
         else:
         maximo = numero2
         return maximo

-------------------------------------------------------------------------
MATRICES DE DATOS

Las matrices o tablas, son fundamentales para organizar nuestros datos en nuestro programa:

Para declarar una matriz nula se hace de la siguiente forma:

Matriz = []

Si queremos meterle por ejemplo algunos valores:

Matriz = [3, 4, 5]

Si por ejemplo queremos hacer una matriz de nombres de ciudades:

Matriz = ["Madrid", "Barcelona", "Valencia"]

Para ver el contenido de la primera celda haremos:
    print Matriz[0] (Nos pondrá Madrid)
    print Matriz[2] (Nos pondrá Valencia)

Si por otras causas queremos añadir una nueva celda a la matriz, lo haremos de la siguiente forma:

    Matriz.append("Bilbao")
Por lo que para obtener el valor de Bilbao tendremos que hacer un:
    print Matriz[3]

Tambien podemos añadir datos, con una entrada de datos mediante la función raw_input() :
    Matriz.append(raw_input() )

Fácil no?, ahora vamos al ultimo punto de esta miniguia....

---------------------------------------------------------------------------
FICHEROS: LECTURA Y ESCRITURA

Lectura:

Primero antes de nada abrimos el fichero :)
fichero=open('texto.txt','r')

Ahora mostramos lo contenido en dicho fichero:

for linea in fichero:
    print linea

Ahora cerramos el fichero:
    fichero.close()

Escritura:

Abrimos fichero:
fichero=open('texto2.txt','w')   

Ahora escribimos
for in range(lineas):
    escrito=raw_input('Texto: ')
    fichero.write(escrito+ '\n')

Y ahora cerramos el fichero
    fichero.close()

-------------------------------------------------------------------------
NOTAS

Repito que tendrá algún fallo y que no estará todo de la mejor forma explicado pero al menos creo que puede ayudar a aquellos que se inician en python :)

En cuanto al tema que comentaron de librerias en python que eran muy buenas, estoy totalmente de acuerdo y os voy a dar una web en la que viene varias librerias, entre la que mención especial merece la thinker( Libreria de TK para GUIs, altamente recomendado): http://www.pythonware.com/library/index.htm





#2
Scripting / Acerca de Python
25 Mayo 2005, 13:19 PM
He estado mirando esta sección del foroy realmente lo que me a chocado es que casi nadie toca el tema de python...

A mi python para los que se inician me parece un lenguaje ESTUPENDO, por una serie de motivos:

- Al igual que perl es INTERPRETADO por lo que con python (la mas reciente 2.4, creo) puedes correr tus scripts tanto en linux como windows , etc...

- Es un lenguaje POTENTISIMO y a diferencia de perl, su uso es muchisimo mas simple

- Y tercero, yo creo que con python si le echas imaginación puedes hacer casi de todo...

PD: Me gustaría que me comentarais que pensais de este lenguaje o que os parece :)

Saludo, lopi.