[Python] Puntos de conocimiento básico de Python


Tutorial para principiantes: https://www.runoob.com/python3/python3-tutorial.html

1. Gramática básica

F8 step over:单步调试,把函数看作一行代码
F7 step into:单步执行代码,有函数则进入函数内部

El
primer carácter del identificador debe ser una letra del alfabeto o un guión bajo _.
Las otras partes del identificador constan de letras, números y guiones bajos.
Los identificadores distinguen entre mayúsculas y minúsculas.

1.1 Notas

Hay comentarios de una sola línea y comentarios de varias líneas en Python:

Los comentarios de una sola línea en Python comienzan con #, por ejemplo:
# Esto es un comentario
impreso ("¡Hola, mundo!")
Los comentarios de varias líneas usan tres comillas simples "'o tres comillas dobles" "" para encerrar el comentario , por ejemplo:

1.
Comillas simples ('' ') #! / Usr / bin / python3
' ''
Este es un comentario de varias líneas, use tres comillas simples
Este es un comentario de varias líneas, use tres comillas simples
Este es un comentario de varias líneas, utilice tres comillas simples
`` '
print ("¡Hola, mundo!")

2. Comillas dobles ("" ")
#! / Usr / bin / python3
" ""
Este es un comentario de varias líneas, utilice tres comillas dobles
Este es un comentario de varias líneas, utilice tres comillas dobles
Este es un comentario de varias líneas, use tres comillas dobles
"" "
print (" ¡Hola, mundo! ")

单行和多行注释均可用:Ctrl+/

1.2 Operador

Inserte la descripción de la imagen aquí

Inserte la descripción de la imagen aquí

Inserte la descripción de la imagen aquí

Inserte la descripción de la imagen aquí

Inserte la descripción de la imagen aquí

Inserte la descripción de la imagen aquí

1.3 Número

Python admite tres tipos numéricos diferentes:

Entero (Int): - Por lo general, se denomina entero o entero, es un entero positivo o negativo sin punto decimal. Los tipos de enteros de Python3 no tienen límite de tamaño y se pueden usar como tipos Long, por lo que Python3 no tiene los tipos Long de Python2.

Tipo de coma flotante (flotante): - El tipo de coma flotante se compone de una parte entera y una parte decimal. El tipo de coma flotante también se puede expresar en notación científica (2.5e2 = 2.5 x 102 = 250)

Número complejo ((complejo)): - Un número complejo consta de una parte real y una parte imaginaria, que puede ser representada por a + bj, o compleja (a, b). La parte real ay la parte imaginaria b del complejo. number son ambos tipos de punto flotante.

Inserte la descripción de la imagen aquí

1.4 Cuerda

Inserte la descripción de la imagen aquí

1.5 Orientado a objetos

Fundamentos de la programación orientada a objetos: "Componer un conjunto de estructuras de datos y métodos para procesarlos en objetos, agrupar objetos con el mismo comportamiento en clases, ocultar detalles internos mediante la encapsulación de clases y usar la herencia. Darse cuenta de la especialización y generalización de clases, y lograr una asignación dinámica basada en tipos de objetos a través del polimorfismo ".

Inserte la descripción de la imagen aquí

Decíamos antes que "un programa es una colección de instrucciones". Las declaraciones que escribimos en el programa se convertirán en una o más instrucciones cuando se ejecuten y luego ejecuten la CPU. Por supuesto, para simplificar el diseño del programa, introdujimos el concepto de función, pusimos código relativamente independiente y frecuentemente reutilizado en la función, y solo necesitamos llamar a la función cuando estas funciones son necesarias; si la función de una función es demasiado complicado e hinchado, podemos dividir aún más la función en subfunciones para reducir la complejidad del sistema.

Pero habiendo dicho tanto, no sé si ha descubierto que la llamada programación es que los programadores controlan la computadora para completar varias tareas de acuerdo con la forma en que funciona la computadora. Sin embargo, la forma en que funciona la computadora es diferente del modo de pensamiento humano normal. Si programa, debe abandonar la forma normal de pensar de los humanos para atender a la computadora, y la diversión de programar es mucho menor. La retórica de " todos deberían aprender a programar "Solo puedo hablar de eso. Por supuesto, estos no son los más importantes. Lo más importante es que cuando necesitamos desarrollar un sistema complejo, la complejidad del código dificultará el trabajo de desarrollo y mantenimiento, por lo que a finales de la década de 1960, la "crisis del software" Una serie de conceptos como "ingeniería de software", etc., comenzaron a aparecer en la industria.

Por supuesto, todos en el círculo de programadores saben que no existe una "fórmula mágica" que resuelva los problemas mencionados anteriormente en la realidad. Lo que realmente da esperanza a los desarrolladores de software es la introducción del lenguaje de programación Smalltalk que nació en la década de 1970. Orientado a objetos ideas de programación (el prototipo de programación orientada a objetos se remonta al lenguaje Simula anterior). Según este concepto de programación, los datos en el programa y la función para manipular los datos son un todo lógico, al que llamamos "objetos", y la forma en que resolvemos el problema es creando los objetos requeridos y enviando varios objetos a los objetos. Al final, el trabajo colaborativo de múltiples objetos nos permite construir sistemas complejos para resolver problemas del mundo real.

2. Tipos de variables básicas


Hay seis tipos de datos estándar en Python3:

Número (número)
Cadena (cadena)
Lista (lista)
Tupla (tupla)
Conjunto (colección)
Diccionario (diccionario)
Entre los seis tipos de datos estándar de Python3:

Datos inmutables (3): Número (número), Cadena (cadena), Tupla (tupla);
datos variables (3): Lista (lista), Diccionario (diccionario), Conjunto (colección).

Inserte la descripción de la imagen aquí

Tipo de número (Número)
Hay cuatro tipos de números en Python: enteros, booleanos, números de punto flotante y números complejos.

int (integer), como 1, solo hay un tipo de entero int, que se representa como un entero largo, y no hay Long en python2.

bool (booleano), como True.

float (número de coma flotante), como 1,23, 3E-2

complejo (plural), como 1 + 2j, 1.1 + 2.2j

Cuerda

El uso de comillas simples y dobles en Python es exactamente el mismo.
Utilice comillas triples ("'o" "") para especificar una cadena de varias líneas.

El carácter de escape ``
barra invertida se puede usar para escapar, usar r puede hacer que la barra invertida no escape. . Si r "es una línea con \ n", se mostrará \ n en lugar de un salto de línea.
Concatenar cadenas literalmente, como "esto" "es" "cadena" se convertirá automáticamente a esta cadena.
Las cadenas se pueden concatenar con el operador + y repetir con el operador *.

Hay dos métodos de indexación para cadenas en Python, comenzando con 0 de izquierda a derecha y comenzando con -1 de derecha a izquierda.
Las cadenas en Python no se pueden cambiar.
Python no tiene un tipo de carácter separado, un carácter es una cadena de longitud 1.
El formato gramatical de la intercepción de cadenas es el siguiente: variable [subíndice de la cabeza: subíndice de la cola: longitud del paso]

3. Entrada y salida

4. Declaración condicional

5. Declaración de bucle

6. Función

Inserte la descripción de la imagen aquí
Python define funciones usando la palabra clave def, y el formato general es el siguiente:

def 函数名(参数列表):
    函数体

De forma predeterminada, los valores de los parámetros y los nombres de los parámetros coinciden en el orden definido en la declaración de la función.

Ejemplo
Utilicemos una función para generar "¡Hola mundo!":

#!/usr/bin/python3
def hello() :
    print("Hello World!")

hello()

def sum_2_num(num1,num2):
	result = num1 + num2
	print("%d + %d = %d" % (num1,num2,result))
	return result
sum_result = sum_2_num(50,20)
print("计算结果:%d" % sum_result)

7. Módulo

#!/usr/bin/python3
# 文件名: using_sys.py
 
import sys
 
print('命令行参数如下:')
for i in sys.argv:
   print(i)
 
print('\n\nPython 路径为:', sys.path, '\n')
执行结果如下所示:

$ python using_sys.py 参数1 参数2
命令行参数如下:
using_sys.py
参数1
参数2

Python 路径 为 : ['/ root', '/usr/lib/python3.4', '/usr/lib/python3.4/plat-x86_64-linux-gnu', '/usr/lib/python3.4/ lib-dynload ',' /usr/local/lib/python3.4/dist-packages ',' / usr / lib / python3 / dist-packages ']

1. Import sys importa el módulo sys.py en la biblioteca estándar de Python, este es el método para importar un determinado módulo.
2. sys.argv es una lista que contiene parámetros de línea de comando.
3. sys.path contiene una lista de rutas donde el intérprete de Python encuentra automáticamente los módulos requeridos.

Inserte la descripción de la imagen aquí

from … import 语句
Python 的 from 语句让你从模块中导入一个指定的部分到当前命名空间中,语法如下:

from modname import name1[, name2[, ... nameN]]

例如,要导入模块 fibo 的 fib 函数,使用如下语句:

>>> from fibo import fib, fib2
>>> fib(500)
1 1 2 3 5 8 13 21 34 55 89 144 233 377
这个声明不会把整个fibo模块导入到当前的命名空间中,它只会将fibo里的fib函数引入进来。

from … import * 语句
把一个模块的所有内容全都导入到当前的命名空间也是可行的,只需使用如下声明:

__name__属性
一个模块被另一个程序第一次引入时,其主程序将运行。如果我们想在模块被引入时,模块中的某一程序块不执行,我们可以用__name__属性来使该程序块仅在该模块自身运行时执行。

8. Lista

Para crear una lista, simplemente encierre los diferentes elementos de datos separados por comas entre corchetes. Como sigue:

lista1 = ['Google', 'Runoob', 1997, 2000]
lista2 = [1, 2, 3, 4, 5]
lista3 = [“a”, “b”, “c”, “d”]
lista4 = [ 'rojo', 'verde', 'azul', 'amarillo', 'blanco', 'negro']

Inserte la descripción de la imagen aquí

9. Tuplas

Las tuplas de Python son similares a las listas, excepto que los elementos de las tuplas no se pueden modificar una vez definidos.

Utilice paréntesis () para tuplas y corchetes [] para listas.

La creación de tuplas es muy simple, solo agregue elementos entre paréntesis y sepárelos con comas.

Inserte la descripción de la imagen aquí

10. Diccionarios

El diccionario es otro modelo de contenedor variable y puede almacenar cualquier tipo de objeto.

Cada par clave valor clave => valor del diccionario está separado por dos puntos :, y cada par está separado por una coma (,). El diccionario completo está entre llaves {}, el formato es el siguiente:

d = {clave1: valor1, clave2: valor2, clave3: valor3}

Inserte la descripción de la imagen aquí

11. Estructura de datos

12. Clase

Fundamentos de la programación orientada a objetos: "Componer un conjunto de estructuras de datos y métodos para procesarlos en objetos, agrupar objetos con el mismo comportamiento en clases, ocultar detalles internos mediante la encapsulación de clases y usar la herencia. Darse cuenta de la especialización y generalización de clases, y lograr una asignación dinámica basada en tipos de objetos a través del polimorfismo ".

Clases y objetos: en pocas palabras, una clase es un plano y una plantilla de un objeto, y un objeto es una instancia de una clase. Aunque esta explicación es un poco como usar conceptos para explicar conceptos, al menos podemos ver en esta oración que las clases son conceptos abstractos y los objetos son cosas concretas. En el mundo de la programación orientada a objetos, todo es un objeto. Los objetos tienen atributos y comportamientos. Cada objeto es único y debe pertenecer a una determinada clase (tipo). Cuando extraemos las características estáticas (atributos) y las características dinámicas (comportamientos) de una gran cantidad de objetos que comparten características comunes, podemos definir algo llamado "clase".

Definir una clase
En Python, puede usar la palabra clave class para definir una clase y luego definir métodos en la clase a través de las funciones que ha aprendido antes, de modo que pueda describir las características dinámicas del objeto. El código se muestra a continuación.

Self representa una instancia de una clase,
y un método de una clase que no es de clase tiene solo una diferencia especial de las funciones ordinarias: deben tener un primer nombre de parámetro adicional, que es por convención self.
self representa una instancia de la clase, que representa la dirección del objeto actual, y self.class apunta a la clase.

class Student(object):

    # __init__是一个特殊方法用于在创建对象时进行初始化操作
    # 通过这个方法我们可以为学生对象绑定name和age两个属性
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def study(self, course_name):
        print('%s正在学习%s.' % (self.name, course_name))

    # PEP 8要求标识符的名字用全小写多个单词用下划线连接
    # 但是部分程序员和公司更倾向于使用驼峰命名法(驼峰标识)
    def watch_movie(self):
        if self.age < 18:
            print('%s只能观看《熊出没》.' % self.name)
        else:
            print('%s正在观看岛国爱情大电影.' % self.name)

Explicación: Las funciones escritas en la clase generalmente se denominan métodos (de objeto) Estos métodos son los mensajes que el objeto puede recibir.

Creación y uso de objetos
Después de definir una clase, podemos crear objetos y enviarles mensajes de las siguientes formas.

def main():
    # 创建学生对象并指定姓名和年龄
    stu1 = Student('骆昊', 38)
    # 给对象发study消息
    stu1.study('Python程序设计')
    # 给对象发watch_av消息
    stu1.watch_movie()
    stu2 = Student('王大锤', 15)
    stu2.study('思想品德')
    stu2.watch_movie()


if __name__ == '__main__':
    main()

Pilares orientados a
objetos La orientación a objetos tiene tres pilares: encapsulación, herencia y polimorfismo. Los dos últimos conceptos se explican en detalle en el siguiente capítulo, donde primero hablamos de lo que es la encapsulación. Mi propia comprensión de la encapsulación es "ocultar todos los detalles de implementación que se pueden ocultar, y solo exponer (proporcionar) una interfaz de programación simple al mundo exterior". El método que definimos en la clase en realidad encapsula los datos y la operación en los datos. Después de crear el objeto, solo necesitamos enviar un mensaje (llamar al método) al objeto para ejecutar el código en el método, lo que significa que Solo necesita saber el nombre del método y los parámetros pasados ​​(la vista externa del método), no los detalles de implementación del método (la vista interna del método).

Ejercicio: Defina una clase para describir relojes digitales.

from time import sleep

class Clock(object):
    """数字时钟"""

    def __init__(self, hour=0, minute=0, second=0):
        """初始化方法

        :param hour::param minute::param second:"""
        self._hour = hour
        self._minute = minute
        self._second = second

    def run(self):
        """走字"""
        self._second += 1
        if self._second == 60:
            self._second = 0
            self._minute += 1
            if self._minute == 60:
                self._minute = 0
                self._hour += 1
                if self._hour == 24:
                    self._hour = 0

    def show(self):
        """显示时间"""
        return '%02d:%02d:%02d' % \
               (self._hour, self._minute, self._second)

def main():
    clock = Clock(23, 59, 58)
    while True:
        print(clock.show())
        sleep(1)
        clock.run()

if __name__ == '__main__':
    main()

Supongo que te gusta

Origin blog.csdn.net/m0_37882192/article/details/112685361
Recomendado
Clasificación