Notas de estudio básico de Python: algunos módulos populares

Algunos módulos populares

1 、 sys

El módulo sys le permite acceder a variables y funciones estrechamente relacionadas con el intérprete de Python.

Función / variable Descripción
argv Parámetros de la línea de comandos, incluido el nombre del script
salir ([arg]) Salga del programa actual, puede especificar el valor de retorno o el mensaje de error a través de parámetros opcionales
módulos Un diccionario que asigna nombres de módulos a módulos cargados
camino Una lista que contiene el nombre del directorio en el que se encuentra el módulo.
plataforma Un identificador de plataforma, como sunos5 o win32
stdin Flujo de entrada estándar: un objeto similar a un archivo
stdout Flujo de salida estándar: un objeto similar a un archivo
stderr Secuencia de error estándar: un objeto similar a un archivo
[root@li python]# vim reverseargs.py
[root@li python]# cat reverseargs.py
import sys
args = sys.argv[1:]
args.reverse()
print(' '.join(args))
[root@li python]# python3 reverseargs.py this is a test
test a is this

2

El módulo os permite acceder a múltiples servicios del sistema operativo.

Función / variable Descripción
alrededor de Contiene un mapa de variables de entorno.
sistema (comando) Ejecutar comandos del sistema operativo en una subshell
sep Separador utilizado en el camino
pathsep Separador para separar diferentes caminos
lineasep Separador de línea ('\ n', '\ r' o '\ r \ n')
urandom (n) Devuelve n bytes de datos aleatorios fuertemente cifrados

3 、 entrada de archivo

El módulo fileinput le permite iterar fácilmente sobre todas las líneas en una serie de archivos de texto.

Función / variable Descripción
entrada ([archivos [, en lugar [, copia de seguridad]]]) Ayude a iterar sobre filas en múltiples flujos de entrada
nombre del archivo() Devuelve el nombre del archivo actual
lineno () Devolver (acumulativo) el número de línea actual
filelineno () Devuelve el número de línea en el archivo actual
isfirstline () Verifique si la línea actual es la primera línea del archivo
isstdin () Compruebe si la última línea proviene de sys.stdin
nextfile () Cerrar el archivo actual y pasar al siguiente archivo
cerca() Cerrar secuencia

4. Conjuntos, montones y deques

4.1, colección

La colección es implementada por el conjunto de clases incorporado. Esto significa que puede crear colecciones directamente sin importar clases:

>>> set(range(10))
{
    
    0, 1, 2, 3, 4, 5, 6, 7, 8, 9}

Puede usar secuencias (u otros objetos iterables) para crear colecciones, o puede usar llaves para especificarlas explícitamente. Tenga en cuenta que no puede usar llaves para crear un conjunto vacío, ya que esto creará un diccionario.

>>> type({
    
    })
<class 'dict'>

La colección se utiliza principalmente para la verificación de miembros, por lo que se ignorarán los elementos duplicados :

>>> {
    
    0,0,1,2,1,4,5,5,5,4}
{
    
    0, 1, 2, 4, 5}

Como un diccionario, el orden de los elementos de una colección es diferente .

Además de las comprobaciones de membresía, se pueden realizar varias operaciones de conjunto estándar, como unión e intersección:

>>> a = {
    
    1,2,3}
>>> b = {
    
    2,3,4}
>>> a.union(b)
{
    
    1, 2, 3, 4}
>>> a | b
{
    
    1, 2, 3, 4}

Hay otros métodos y operadores:

>>> c = a & b
>>> c.issubset(a)
True
>>> c <= a
True
>>> c.issuperset(a)
False
>>> c >= a
False
>>> a.intersection(b)
{
    
    2, 3}
>>> a & b
{
    
    2, 3}
>>> a.difference(b)
{
    
    1}
>>> a - b
{
    
    1}
>>> a ^ b
{
    
    1, 4}
>>> a.copy()
{
    
    1, 2, 3}
>>> a.copy() is a
False

Los conjuntos son mutables, por lo que no se pueden utilizar como claves de diccionario . Otro problema es que las colecciones solo pueden contener valores inmutables, por lo que no pueden contener otras colecciones .

>>> a = set()
>>> b = set()
>>> a.add(b)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: unhashable type: 'set'

El constructor forzenset crea una copia del conjunto dado. Útil cuando necesita usar una colección como miembro de otra colección o como clave en un diccionario.

4.2, montón

Es una cola de prioridad que le permite agregar objetos en cualquier orden y encontrar (y eliminar) el elemento más pequeño en cualquier momento . El módulo se llama heapq.

Función / variable Descripción
heappush (montón, x) Empuja x en el montón
heappop (montón) Saca el elemento más pequeño del montón
heapify (montón) Deje que la lista tenga características de montón
heapreolace (montón, x) Pop el elemento más pequeño y empuja x en el montón
más grande (n viaje) Devuelve los n elementos más grandes en iter
más pequeño (n, iter) Devuelve los n elementos más pequeños en iter
>>> from heapq import *
>>> from random import shuffle
>>> data = list(range(10))
>>> shuffle(data)
>>> heap = []
>>> for n in data:
...     heappush(heap,n)
...
>>> heap
[0, 1, 6, 2, 4, 7, 9, 8, 3, 5]
>>> heappush(heap,0.5)
>>> heap
[0, 0.5, 6, 2, 1, 7, 9, 8, 3, 5, 4]

Es el gran montón en la estructura de datos, es decir, todavía hay un cierto orden de disposición.

>>> heappop(heap)
0
>>> heappop(heap)
0.5
>>> heappop(heap)
1
>>> heap
[2, 3, 6, 5, 4, 7, 9, 8]
>>> heap = [5,8,0,3,6,7,9,1,4,2]
>>> heapify(heap)			#就是调整堆的过程
>>> heap
[0, 1, 5, 3, 2, 7, 9, 8, 4, 6]

4.3, deque

El deque es útil cuando necesita eliminar los elementos en el orden en que se agregaron .

>>> from collections import deque
>>> q = deque(range(5))
>>> q.append(5)
>>> q.appendleft(6)
>>> q
deque([6, 0, 1, 2, 3, 4, 5])
>>> q.pop()
5
>>> q.popleft()
6
>>> q.rotate(3)
>>> q
deque([2, 3, 4, 0, 1])
>>> q.rotate(-1)
>>> q
deque([3, 4, 0, 1, 2])

5 、 tiempo

Módulo de hora configurado para obtener una hora actual, una hora y fecha de operación, leyendo la hora de la cadena, la fecha formateada a un formato de cadena .

Campos en la tupla de fechas de Python
índice Campo valor
0 año
1 mes 1 ~ 12
2 día 0 ~ 31
3 Hora 0 ~ 23
4 Minuto 0 ~ 59
5 segundo 0 ~ 61
6 semana 0 ~ 6, donde 0 representa el lunes
7 Día confidencial 1 ~ 366
8 Hora de verano 0, 1 o -1
Función / variable Descripción
asctime ([tupla]) Convertir tupla de tiempo en cadena
hora local ([segundos]) Convertir segundos a tupla de fecha y hora local
mktime (tupla) Convertir tupla de tiempo a hora local
dormir (segundos) Dormir (no hacer nada) segundos segundos
strptime(string[,format]) 将字符串转换为时间元组
time() 当前时间(从新纪元开始后的秒数)
>>> import time
>>> time.time()
1596703340.4325356
>>> time.asctime()
'Thu Aug  6 16:42:39 2020'

6、random

模块 random 包含生成伪随机数的函数

函数 说明
random() 返回一个 0~1(含)的随机数
getrandbits(n) 以长整数方式返回 n 个随机地二进制数
uniform(a,b) 返回一个 a~b(含)的随机实数
randrange([start],stop,[step]) 从 range(start,stop,step) 中随机地选择一个数
choice(seq) 从序列 seq 中随机地选择一个元素
shuffle(seq[,random]) 就地打乱序列 seq
sample(seq,n) 从序列 seq 中随机地选择 n 个值不同的元素

Supongo que te gusta

Origin blog.csdn.net/qq_36879493/article/details/107844159
Recomendado
Clasificación