comment
IRC Chat
play_arrow
Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

[SOLUCIONADO] Ayuda para comprender un poco Python, vengo de Java.

  • 3 Respuestas
  • 1132 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado coke951

  • *
  • Underc0der
  • Mensajes: 37
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
  • Skype: Cok3951
« en: Diciembre 30, 2015, 01:37:44 am »
Que tal, he estado aprendiendo un poco lo fundamental en POO con python y me he quedado un poco patidifuso con las variables estáticas y con la clase principal, espero que alguien se tome la molestia de ayudar a este pobre novato.

Bueno, mi primer lenguaje fue Java, lo tengo aprendido pues, algo bien, asi que intentare primero explicar lo que quiero hacer en python, pero con java o algo asi, para que me entiendan mejor.

En python he visto que llaman variables estáticas de clase (o una cosa asi) a las variables que yo conozco como variables de clase o bueno, mas específicamente a como yo las conozco se le llaman variables de instancia, y si quiero que la variable sea estática (que en todos los objetos instanciados sea la misma variable), seria algo así por ejemplo:

Código: Java
  1. class Hola{
  2.         static You are not allowed to view links. Register or Login hola;
  3. }
  4.  

pero veo que en Python seria algo asi

Código: Python
  1. class Hola():
  2.         hola = None
  3.  

pero al instanciar 2 objetos, si a uno le modifico el valor de hola, en el otro objeto instanciado me sigue mostrando None, entonces ¿realmente es una variable estatica? o lo llaman asi pero no por que haga lo mismo que hace en java?



otra pregunta, al parecer se utiliza self como lo que seria en Java como this... y cuando creamos un método en la lista de parametros hay que incluir self si utilizaremos alguna variable de instancia a la cual hacer referencia o siempre hay que utilizar self?

y por ultimo... ¿que rayos pasa con el método main? Cual seria la instuccion que hay que darle a python lo equivalente que es en Java public static void main(String[]args)?

Espero que me puedan ayudar... Gracias de antemano.
Saludos y feliz año nuevo!
« Última modificación: Enero 01, 2016, 10:29:42 pm por EPSILON »

Desconectado .:UND3R:.

  • *
  • Underc0der
  • Mensajes: 226
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
« Respuesta #1 en: Diciembre 31, 2015, 03:13:28 pm »
Código: You are not allowed to view links. Register or Login
def main():
    # my code here

if __name__ == "__main__":
    main()


Desconectado po6xsecpo

  • *
  • Underc0der
  • Mensajes: 45
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
    • Email
  • Skype: po6xsecpo@gmail.com
« Respuesta #2 en: Enero 01, 2016, 03:30:40 pm »
De las tres dudas ya tienes la del main. Te ayudo con ésta, pues la primera sobre los static no la sé.

Citar
cuando creamos un método en la lista de parametros hay que incluir self si utilizaremos alguna variable de instancia a la cual hacer referencia o siempre hay que utilizar self?

El self en la firma del método lo convierte, de alguna manera, en un método de instancia. Por el contrario, si declara sun método
miMetodo() sin self sería un método estático y no podrías acceder aatributos de instancia... Exactamente lo que ya indicabas.

Saludos


Desconectado coke951

  • *
  • Underc0der
  • Mensajes: 37
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
  • Skype: Cok3951
« Respuesta #3 en: Enero 01, 2016, 06:16:24 pm »
Perfecto, muchas gracias a ambos, solo me falta entender mi ultima duda

You are not allowed to view links. Register or Login
De las tres dudas ya tienes la del main. Te ayudo con ésta, pues la primera sobre los static no la sé.

Citar
cuando creamos un método en la lista de parametros hay que incluir self si utilizaremos alguna variable de instancia a la cual hacer referencia o siempre hay que utilizar self?

El self en la firma del método lo convierte, de alguna manera, en un método de instancia. Por el contrario, si declara sun método
miMetodo() sin self sería un método estático y no podrías acceder aatributos de instancia... Exactamente lo que ya indicabas.

Saludos

 

¿Te gustó el post? COMPARTILO!



[SOLUCIONADO] ¿Kali Linux o Kali Linux Ligth ?

Iniciado por worq

Respuestas: 2
Vistas: 5204
Último mensaje Noviembre 21, 2017, 12:28:54 pm
por Codig0Bit
Crear un archivo .vbs para ejecutar un archivo .bat en invisible

Iniciado por NMS

Respuestas: 2
Vistas: 3584
Último mensaje Marzo 13, 2017, 10:37:57 pm
por sadfud
Cómo uso la "/" para hacer un select en una tabla

Iniciado por tetano32

Respuestas: 3
Vistas: 781
Último mensaje Diciembre 20, 2017, 04:41:12 pm
por tetano32
allegro 5,opngl,sdk para fan game modo storyboard game

Iniciado por Mr.Tru

Respuestas: 2
Vistas: 243
Último mensaje Mayo 23, 2018, 01:19:20 pm
por Mr.Tru
¿Qué sistema operativo sería recomendable para un "core 2 duo"?

Iniciado por adragon

Respuestas: 4
Vistas: 1430
Último mensaje Febrero 18, 2017, 10:13:04 am
por Linuxero40