Загрузка...

Need help!

Thread in Python created by ArtemDav1337 Dec 19, 2019. 132 views

  1. ArtemDav1337
    ArtemDav1337 Topic starter Dec 19, 2019 Питон цэ май лайф 19 Sep 23, 2018
    Итак, коротко говоря мне нужно посчитать строки в определенном файле .txt (примерно 1ГБ).
    При чтении линий питон выдает ошибку (Memory Error). Я так понял не хватает памяти.
    Как все таки можно прочитать все без ошибки?
    Мой код:
    Code

    import time

    count = 0
    name = input("[Имя файла]: ")
    with open(name, "r") as file:
    start = time.time()
    for i in file.readlines():
    count += 1
    stop = time.time()
    print("Кол-во строк - {0}\nПрошло времени - {1}".format(count, stop - start))
     
  2. Cyaneyed
    Cyaneyed Dec 19, 2019 Banned 191 May 9, 2019
    Так ты сначала её задай )
     
  3. ArtemDav1337
    ArtemDav1337 Topic starter Dec 19, 2019 Питон цэ май лайф 19 Sep 23, 2018
    С этого момента поподробней)
     
  4. Cyaneyed
    Cyaneyed Dec 19, 2019 Banned 191 May 9, 2019
    Code

    def blocks(files, size=65536):
    while True:
    b = files.read(size)
    if not b: break
    yield b

    with open("file", "r") as f:
    print sum(bl.count("\n") for bl in blocks(f))
     
  5. sesu
    sesu Dec 19, 2019 Ты не умеешь писать код 114 Nov 17, 2019
  6. Cyaneyed
    Cyaneyed Dec 19, 2019 Banned 191 May 9, 2019
  7. ArtemDav1337
    ArtemDav1337 Topic starter Dec 19, 2019 Питон цэ май лайф 19 Sep 23, 2018
    Все сенкью вери мач
     
Loading...
Top