Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: metalost en 1 Marzo 2017, 05:34 am



Título: Duda linea de python
Publicado por: metalost en 1 Marzo 2017, 05:34 am
Alguien me podria explicar, para que sirve cada parte de esa linea de codigo? Me parece que es de python 2.7, y se supone que si colocas esa linea de codigo, podras escribir con acentos (continuación) y no (continuacion) es decir, si coloco el acento, sin el codigo se supone que me da error, pero ¿Me podrian explicar mas detalladamente esa linea de codigo?
Código
  1. #! /usr/bin/env python # -*- coding: utf-8 -*-
  2.  


Título: Re: Duda linea de python
Publicado por: engel lex en 1 Marzo 2017, 05:40 am
Código:
#!/usr/bin/env python

lo que hace es decirle al interprete de comandos (la pantalla negra) que lo que está a contnuación sea pasado a el programa que consiga en la variable de systema que apunte la palabra "python". Es decir, lo que esté justo despues será ejecutado como python

esta linea en general permite ejecutar en linux el python usando
Código:
./archivo.py

sin esta linea tendrá que ejecutarse

Código:
python ./archivo.py

ya que el interprete de comandos no sabrá a quien va dirigido



Código:
# -*- coding: utf-8 -*- 

lo que hace es indicarle a python que el archivo éstará codificado en utf-8 (si no, lo tomará como ascii o la default del sistema), ya que el espacio de trabajo de ascii se toma como de 7 bits, no contendrá acentos ni tildes, por lo que si el fichero fue codificado en utf-8 a nivel binario no tendrá sentido, esto tambien lo tomará el interprete de python para saber como trabajar el texto que entre

si hay dudas con esto recomiendo averiguar en wikipedia sobre utf-8 y ascii


Título: Re: Duda linea de python
Publicado por: Eleкtro en 1 Marzo 2017, 06:39 am
Si estás en Windows y tienes pensado utilizar/asignar caracteres del idioma Español dentro del código fuente y/o representar dichos caracteres en la consola, entonces primero guarda tu documento .py usando la codificación ANSI adecuada, y luego especifica el código de página/codificación respectivamente dentro del código fuente (CP1252 / Windows-1252 / Latin-1).

Código
  1. # -*- coding: Windows-1252 -*-
  2.  
  3. print 'áéíóú àèìòù äëïöü ñ ç'.decode('Windows-1252')

¡Saludos!


Título: Re: Duda linea de python
Publicado por: metalost en 1 Marzo 2017, 17:44 pm
Disculpen mi pregunta, Pero entonces, el comando que me mandaron (Las 2 partes) son para linux?Dios xD, ¿Que utilidad o como lo deberia aplicar en windows? (Ya tengo python instalado, y por lo que entendi, los comandos sirven es en el equivalente a cmd pero de linux :s


Título: Re: Duda linea de python
Publicado por: engel lex en 1 Marzo 2017, 18:54 pm
no, el primero es para linux, ya que le dice a la consola con quien ejecutar, sin embargo como esta linea es un comentario no causar{a problemas en su ejecución en otro OS... el segundo es para cualquiera ya que lo interpreta el python