f = open(r'file.txt') line = random.choice(f.readlines()) f.close line = line
line = 'случайно выбранная вручную строка из file.txt'
Скрипт не хочет корректно работать с первым вариантом.
f = open(r'file.txt') line = random.choice(f.readlines()) f.close line = line
line = 'случайно выбранная вручную строка из file.txt'
>>> from random import choice >>> def foo(): ... with open('file', 'r') as f: ... print choice(f.readlines()) ... >>> foo() 5 >>> foo() 2 >>> foo() 4
[00:54] home:~ cat file
1
2
3
4
5
line = 'случайно выбранная вручную строка из file.txt'
webstghost
Чем отличается
f = open(r'file.txt')
line = random.choice(f.readlines())
f.close
line = line
от
line = ‘случайно выбранная вручную строка из file.txt’
?
Скрипт не хочет корректно работать с первым вариантом.
…
Я недостаточно ясно описал проблему.
Мой скрипт выбирает случайную строку без проблем, и ‘print line’ выдает ‘случайно выбранная вручную строка из file.txt’.
Но видимо формат данных отличается от того, если я просто задам значение для line:
line = ‘случайно выбранная вручную строка из file.txt’
line в моем скрипте, это рандомный http заголовок.
Проблема в том, что при его случайном выборе запрос возвращает пустоту. Но если задать заголовок напрямую все проходи успешно. При этом ‘print’ выдает идентичные ‘line’ в обоих случаях.
>>> f.readlines()[0] '450\n'
f.read().splitlines()