Вывод в текстовый файл - PullRequest
       12

Вывод в текстовый файл

2 голосов
/ 30 января 2009

Как напечатать следующий код в текстовый файл

y = '10.1.1.' # /24 network, 
for x in range(255):
    x += 1
    print y + str(x) # not happy that it's in string, but how to print it into a.txt

Есть копирование, но лучше попробовать что-нибудь более интересное.

Ответы [ 4 ]

6 голосов
/ 30 января 2009
f = open('myfile.txt', 'w')
for x in range(255):
    ip = "10.1.1.%s\n" % str(x)
    f.write(ip)
f.close()
3 голосов
/ 30 января 2009

scriptname.py >> output.txt

1 голос
/ 30 января 2009

Для чего нужен x += 1? Кажется, что это обходной путь для range(255), основанный на 0 - который дает последовательность 0,1,2 ... 254.

range(1,256) лучше даст вам то, что вы хотите.

Альтернатива другим ответам:

NETWORK = '10.1.1'
f = open('outfile.txt', 'w')
try:
    for machine in range(1,256):
        print >> f, "%s.%s" % (NETWORK, machine)
finally:
    f.close()
0 голосов
/ 31 января 2009

В Python 3 вы можете использовать аргумент ключевого слова функции печати называется файл. «а» означает «добавить».

f = open("network.txt", "a")
for i in range(1, 256):
    print("10.1.1." + str(i), file=f)
f.close()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...