Tengo este comando en Linux que tengo problemas para convertir en type en Windows:
row = run('cat '+'C:/Users/Kyle/Documents/final/VocabCorpus.txt'+" | wc -l").split()[0]Porque la instrucción "wc - l" es para el conteo de líneas para ver cuántas líneas existen. Si tuviera que cambiarlo a lo siguiente usando el comando "tipo", ¿cuál debería ser?
Intenté esto y no funciona.
row = run('type '+'C:/Users/Kyle/Documents/final/VocabCorpus.txt'+" | wc -l").split()[0]El comando de ejecución está a continuación:
def run(command): output = subprocess.check_output(command, shell=True) return outputPor favor, ayúdame. Gracias.
¿Está tratando de contar el número de líneas en un archivo? ¿Por qué no puedes hacer eso en Python puro?
¿Algo como esto?
with open('C:/Users/Kyle/Documents/final/VocabCorpus.txt') as f: row = len(f.readlines())En realidad, wc cuenta \n símbolos en su archivo ( prueba ). Si tiene archivos grandes y desea ahorrar algo de memoria, será mejor que lo lea por partes para tener un consumo de memoria O (1):
CHUNK_SIZE = 4096 def wc_l(filepath): nlines = 0 with open(filepath, 'rb') as f: while True: chunk = f.read(CHUNK_SIZE) if not chunk: break nlines += sum(1 for char in chunks if char == '\n') return nlines