Programació

La guia definitiva per a principiants de Python

30 d'octubre de 2021

Taula de continguts

  • Configuració de l'entorn
    • Configuració de l'entorn local
    • Com obtenir Python
    • Com instal·lar Python
    • Instal·lació de Windows
    • Instal·lació Unix/Linux
    • Instal·lació MAC
    • Configuració de Path per a Python
    • Configuració del camí per a Unix/Linux
    • Configuració del camí per a Windows
  • Variables d'entorn de Python
    • Córrer Python
  • Sintaxi bàsica
    • Identificadors Python
    • Declaració de Python
    • Sagnies en Python
    • Comentaris en Python
    • Obtenció d'entrada
    • Mostra la sortida
  • Tipus de variables
    • Assignació de valors a les variables
    • Tipus de dades de Python
    • Cordes
    • Tuples
    • Llistes
    • Nombres
  • Operadors bàsics
    • Operador d'assignació
    • Operador bit a bit
    • Operador lògic
    • Operador aritmètic
    • Operador de comparació
    • Operador d'identitat
    • Operador de membres
  • Presa de decisions
    • Si declaració
    • si una altra cosa
    • Niu si
    • Si-elif-una altra escala
    • Declaració taquigràfica si
    • Declaració taquigràfica if-else
  • Bucles
    • Bucle While
    • For Loop
    • Bucles imbricats
    • Declaracions de control de bucle
    • Continuar declaració
    • Declaració de trencament
    • Passa la declaració
  • Nombres
    • Conversió de tipus de nombre
    • Funcions de nombre aleatori
    • Funcions trigonomètriques
    • Funcions matemàtiques
  • Cordes
    • Creació d'una cadena
    • Operadors especials de cadena
    • Operadors de format de cadena
    • Personatges d'escapament
    • Mètodes de cordes integrats
  • Tuples
    • Accés als valors en tuples
    • Actualització de tuples
    • Operadors bàsics de tuple
    • Funcions de tupla integrades
    • Indexació i tall
    • Esborrant una tupla
  • Llistes
    • Accés als valors de les llistes
    • Actualització de les llistes
    • Operadors de llista bàsics
    • Funcions i mètodes de llista integrats
    • Indexació i tall
    • Suprimeix l'element Llistes
  • Diccionari
    • Creació d'un diccionari
    • Afegir elements en un diccionari
    • Eliminació d'elements del diccionari
    • Mètodes de diccionari Python
  • Data i hora
    • Temps Tuple
    • Mòdul de temps
    • Mòdul Calendari
  • Funcions
  • Mòduls
  • Fitxers I/O
    • Obrint un fitxer
    • Atributs de l'objecte del fitxer
    • Tancant un fitxer
    • Amb Declaració
    • El mètode Write
    • El mètode de lectura
    • El mètode rename().
    • El mètode remove().
    • Posició del fitxer
  • Excepcions
    • Què és una excepció?
    • Gestionar una excepció
    • Plantejant una excepció
    • Llista d'excepcions estàndard
    • Excepcions definides per l'usuari
    • Afirmacions en Python
  • Classes i Objectes
    • Creació de classes
    • Objectes de classe
    • Atributs d'accés
    • Atributs de classe incorporats
    • Recollida d'escombraries
    • Herència de classe
    • Mètodes de substitució
    • Expressions regulars
    • Funció de coincidència
    • Funció de cerca
    • Modificadors d'expressió regular
    • Patrons d'expressió regular
    • Classes de personatges
    • Casos de repetició
    • Àncores
  • Programació CGI
    • Navegació web
    • Capçalera HTTP
    • Variables d'entorn CGI
    • Mètode GET
    • Mètode POST
    • Ús de galetes en CGI
    • Com funciona?
  • Accés a la base de dades MySQL
    • Creació de la taula de bases de dades
    • Operació INSERT
    • Operació LLEGIR
    • Operació d'actualització
    • Operació DELETE
    • Realització de Transaccions
    • Operació COMMIT
    • Operació ROLLBACK
    • Desconnexió de la base de dades
    • Maneig d'errors
  • Xarxes
    • Què són els endolls?
    • El mòdul de presa
    • Mòduls d'Internet Python
  • Enviament de correu electrònic
    • Enviament d'un correu electrònic HTML amb Python
    • Enviament de fitxers adjunts com a correu electrònic
  • Programació multifils
    • Començant un fil nou
    • El mòdul Threading
    • Sincronització de fils
    • Cua de prioritats multifils
  • Processament XML
    • Què és XML?
    • Arquitectures d'analitzador XML i API
    • Anàlisi XML amb API SAX
      • El mètode make_parser
      • El mètode parse
      • El mètode parseString
  • Programació GUI
    • Ginys de Tkinter
  • Gestió de la Geometria
  • Articles recomanats

Funcions

La funció és un conjunt d'instruccions que prenen entrades, produeixen sortida i fan alguns càlculs específics i. La idea és reunir algunes tasques comunes i fer que la funció, en lloc d'escriure el mateix codi de nou per a diferents entrades, podem cridar la funció.

Python proporciona funcions integrades com print(), etc., però també podem crear les vostres funcions. Aquestes funcions s'anomenen funcions definides per l'usuari.

img 617dd26e8d81f

SORTIDA

img 617dd26ece337

Com definir una funció

  • El bloc de funcions comença amb la paraula clau def i el segueix el nom de la funció i els parèntesis ( ( ) ).
  • Qualsevol argument d'entrada s'ha de col·locar entre parèntesis. Podeu definir paràmetres dins dels parèntesis.
  • La primera declaració de la funció pot ser opcional: la cadena de documentació de la funció.
  • El codi de cada funció normalment comença amb dos punts (:) i està sagnat.
  • La declaració retorna surt d'una funció, que opcionalment retorna una expressió a la persona que truca. La instrucció return sense arguments és la mateixa que return None.

Sintaxi

|_+_|

Crida a una funció

Definir la funció significa donar-li un nom, especificar els paràmetres que s'inclouen a la funció i estructurar els blocs de codi. Si l'estructura bàsica d'una funció és definitiva, podeu executar la funció cridant-la des d'una altra funció o directament des del indicador de Python.

Passar per referència

Tots els paràmetres del llenguatge Python es passen generalment per referència. Això vol dir que si canvieu el que diu un paràmetre dins d'una funció, el canvi també es reflecteix a la funció de crida.

Passar per valor

En passar per valor, la funció generalment es proporciona amb una còpia de l'objecte argument passat per la persona que truca. Significa que l'objecte original es manté intacte i els canvis realitzats són una còpia i s'emmagatzemen en diferents ubicacions de memòria.

Arguments de funció

Podeu cridar les funcions utilitzant aquests arguments formals

  • Arguments de longitud variable
  • Arguments necessaris
  • Arguments per defecte
  • Arguments de paraules clau

Arguments de longitud variable

Heu de processar la funció per obtenir més arguments dels que heu especificat mentre definiu la funció. Aquests arguments es coneixen com de longitud variable arguments, i no s'anomenen a la definició de la funció, a diferència dels arguments obligatoris i predeterminats.

img 617dd26f125c2

SORTIDA

img 617dd26f54165

Arguments necessaris

Els arguments necessaris són aquells arguments que es passen a una funció en l'ordre correcte. Aquí, els arguments de la crida de funció haurien de coincidir precisament amb la definició de la funció.

img 617dd26f8f03f

SORTIDA

img 617dd27001f4b

Arguments per defecte

L'argument per defecte és un argument que assumeix el valor per defecte tant si es proporciona un valor com si no a la crida de funció d'aquest argument.

img 617dd2703b6e4

SORTIDA

img 617dd2707158f

Arguments de paraules clau

Python us ajuda a cridar la funció amb els arguments de la paraula clau. Aquesta trucada de funció us permetrà passar les declaracions en ordre aleatori.

El nom de l'argument es tracta com les paraules clau i es fa coincidir a la crida i definició de la funció. Si es troba la mateixa coincidència, els valors dels arguments es copien a la definició de la funció.

img 617dd270b419f

SORTIDA

img 617dd2710a550

Funcions anònimes

  • Els formularis lambda poden prendre diversos arguments, però només retornen un valor en forma d'expressió. No poden contenir ordres ni expressions múltiples.
  • Una funció anònima no pot ser una crida directa per imprimir perquè lambda requereix una expressió.
  • Les funcions Lambda tenen espais de noms locals i no poden accedir a variables que no siguin les de la seva llista de paràmetres i les de l'espai de noms global.
  • Tanmateix, sembla que les lambdas són una funció d'una línia, no són equivalents a les declaracions en línia en C++ o C, el propòsit de les quals és obviar l'assignació de pila de funcions durant la invocació per raons de rendiment.

Mòduls

Un mòdul us permet organitzar el vostre codi Python de manera lògica. Agrupar el codi en un mòdul fa que el codi sigui més fàcil d'entendre i utilitzar. Un mòdul és un objecte Python amb atributs de nom coherent que podeu lligar i fer referència.

En altres paraules, un mòdul és un fitxer que consta d'un codi Python. Un mòdul pot definir funcions, classes i variables. També pot incloure codi executable.

Declaració d'importació

Podeu utilitzar el fitxer font de Python com a mòdul executant una instrucció d'importació en altres fitxers font de Python.

SINTAXI

|_+_|

Quan un intèrpret troba una instrucció d'importació, importa el mòdul que es presenta a la ruta de cerca. És una llista de directoris que un intèrpret cerca abans d'importar un mòdul.

La declaració d'importació

La instrucció Python from us ajuda a importar atributs específics d'un mòdul a l'espai de noms actual.

SINTAXI

|_+_|

La declaració d'import *

És possible importar tots els noms d'un mòdul a un espai de noms actual.

SINTAXI

|_+_|

Proporciona una manera senzilla d'importar elements d'un mòdul a un espai de noms actual; tot i que, aquesta afirmació s'ha d'utilitzar amb moderació.

Localització de mòduls

Quan importeu mòduls, l'intèrpret cerca el mòdul en aquestes seqüències

  • Directori actual.
  • Si el mòdul no hi és, cerca cada directori de la variable shell PYTHONPATH.
  • Si això també falla, Python comprova el camí predeterminat.

El mòdul cerca el camí emmagatzemat al mòdul del sistema com a variable sys.path. La variable sys.path conté el directori actual, PYTHONPATH, i el valor predeterminat depenent de la instal·lació.

Les funcions locals() i globals().

Les funcions locals() i globals() s'utilitzen per retornar els noms als espais de noms local i global que depenen de la ubicació des d'on es criden.

Si el globals() es crida des de la funció, retorna tots els noms als quals es pot accedir globalment des d'aquesta funció.

Si es crida locals() des d'una funció, retornarà tots els noms als quals es pot accedir localment des d'aquesta funció.

El tipus de retorn de les dues funcions és un diccionari. Per tant, els noms es poden extreure mitjançant la funció keys().

Espais de noms i abast

Les variables són noms que s'assignen als objectes. L'espai de noms és un diccionari de noms de variables i els seus objectes corresponents.

Una instrucció de Python pot accedir a variables en un espai de noms local. Si la variable global i una variable local tenen el nom similar a l'espai de noms global, la variable local ombreja la variable global.

Cada funció té el seu espai de noms local. Els mètodes de classe també segueixen la mateixa regla d'abast que altres funcions ordinàries.

Per assignar un valor a una variable global, hauríeu d'utilitzar la instrucció global.

Per exemple, definim una variable Money a l'espai de noms global. Dins de la funció Money, assignem un valor a Money. Per tant, Python assumeix Money com una variable local. Tanmateix, hem accedit al valor de la variable local Money abans de configurar-lo, de manera que es produeix un UnboundLocalError. Descomentar la declaració global soluciona el problema.

La funció dir( ).

La funció dir() és una funció integrada que retorna una llista ordenada de cadenes que contenen els noms definits per un mòdul. La llista conté tots els noms dels mòduls, variables i funcions definides en un mòdul

La funció reload().

Quan s'importa el mòdul, el codi del nivell superior d'un mòdul només s'executa una vegada. Per tant, si voleu tornar a executar el codi de nivell superior en un mòdul, podeu utilitzar la funció reload(). La funció reload() torna a importar un mòdul importat anteriorment.

SINTAXI

|_+_|