IS & pitón leer y escribir archivos y módulo común == y distinción

y es la diferencia entre ==

  • No sólo es la dirección de memoria de datos es la misma que
  • == Analizando sólo para el mismo tipo de datos y los datos

Lectura y escritura de archivos

  • preguntas cara clásicos: Hay un archivo de 5G, otro archivo está escrito en Python

    • leer (): especifica el tamaño del archivo especificado para leer (el tiempo predeterminado para leer todos)
    • readline (): línea de lectura por línea, para la lectura de archivos de gran tamaño
    • readlines (): una sola vez leído todos los archivos, el archivo se lee en una lista de filas
  • Usamos un bucle while para leer el contenido del archivo, el tamaño de cada lectura de hasta 8 kb

  • Se necesita una enorme cadena de proceso de empalme para evitar antes, para reducir el consumo de memoria mucho.

#!/usr/bin/python
# -*- coding: utf-8 -*-
def read_big_file_v(fname):
    block_size = 1024 * 8
    with open(fname,encoding="utf8") as fp:
        while True:
            chunk = fp.read(block_size)
            # 当文件没有更多内容时,read 调用将会返回空字符串 ''
            if not chunk:
                break
            print(chunk)
path = r'C:\aaa\luting\edc-backend\tttt.py'
read_big_file_v(path)

Módulo común

  • módulo re
findall: findall(pattern,string),查找所有满足条件的字符

search: search(pattern,string[,flags]),在字符串中查找,返回第一个匹配的字符串 分装返回对象为,span = (0,5) (匹配的位置)左闭右开

match : match(pattern,string[,flags]) 在字符串开头查找,与search返回值相同

split:split(pattern,string[,maxsplit=0])根据模式切割字符串

compilecompile(pattern,[,flags]) 根据包含正则表达式的字符串创建模式对象

sub : sub(pat,repl,string[,count=0]) 将字符串中模式pat匹配的子串都替换为repl

  • módulo de subproceso

subproceso principio y función de envoltura común

  • pitón plazo, estamos en un proceso para crear y correr. Como Linux, como un proceso, un proceso puede bifurcar un proceso hijo, y dejar que el proceso hijo ejecutivo de otro programa
  • En Python, adoptamos el paquete subproceso biblioteca estándar para desembolsar un proceso hijo, y para ejecutar un programa externo.
  • subproceso definida en el paquete son varios función crea el proceso hijo, estas funciones son para crear un proceso hijo de una manera diferente, por lo que podemos elegir uno para su uso cuando sea necesario
  • Además subproceso también proporciona algo de flujo estándar de gestión (corriente estándar) y herramientas para la tubería (tubo), que utilizan la comunicación de texto entre procesos.

subproceso funciones comúnmente usadas

#1、返回执行状态:0 执行成功
retcode = subprocess.call(['ping', 'www.baidu.com', '-c5'])

#2、返回执行状态:0 执行成功,否则抛异常
subprocess.check_call(["ls", "-l"])

#3、执行结果为元组:第1个元素是执行状态,第2个是命令结果
>>> ret = subprocess.getstatusoutput('pwd')
>>> ret
(0, '/test01')

#4、返回结果为 字符串 类型
>>> ret = subprocess.getoutput('ls -a')
>>> ret
'.\n..\ntest.py'


#5、返回结果为'bytes'类型
>>> res=subprocess.check_output(['ls','-l'])
>>> res.decode('utf8')
'总用量 4\n-rwxrwxrwx. 1 root root 334 11月 21 09:02 test.py\n'

Convertir dos archivo de formato en un formato UNIX

subprocess.check_output(['chmod', '+x', filepath])
subprocess.check_output(['dos2unix', filepath])
Publicado 84 artículos originales · ganado elogios 1 · vistas 2064

Supongo que te gusta

Origin blog.csdn.net/lxp_mocheng/article/details/104796396
Recomendado
Clasificación