Форум сайта python.su
Как прочитать один файле в режиме чтения это понятно
open('vlanxxx.txt', ‘r’)
не так не получается vlan*.txt, *.*, *.txt
геропом как два байта переслать egrep xxx vlan*.txt
а как все прочитать?
Офлайн
Так?
'\n'.join([open(fname).read() for fname in glob.glob("vlan*.txt")])
Офлайн
Можно и так
for line in glob.glob(“vlan*.txt”):
if ‘XX.XX.XX.XX’ in open(line).read():
print open(line).read()
только он вывод где нашел и вывод всего, а нужно только строку найденную
Есть еще у кого варианты?
Офлайн
http://docs.python.org/library/fileinput.html
>>> import glob, fileinput
>>> files = fileinput.input(glob.glob('*.zcml'))
>>> for line in files:
... print line
...
Отредактировано (Янв. 17, 2010 12:56:05)
Офлайн
avdoshkinВы сами поняли чего сказали :) ?
только он вывод где нашел и вывод всего, а нужно только строку найденную
Офлайн
Edнемного загнал, бывает :)avdoshkinВы сами поняли чего сказали :) ?
только он вывод где нашел и вывод всего, а нужно только строку найденную
Офлайн
Так что надо-то? Вначале было это
а как все прочитать?Вам дали 2 рецепта как это сделать. В результате вы написали что-то непонятное, но видно, что надо вам что-то другое.
Отредактировано (Янв. 17, 2010 13:59:27)
Офлайн
EdРецепт от crchemist то что нужно!
Так что надо-то? Вначале было этоа как все прочитать?Вам дали 2 рецепта как это сделать. В результате вы написали что-то непонятное, но видно, что надо вам что-то другое.
Офлайн
Еще раз возобновляю тему но с коррекцией вопроса!
Есть функция из первой функции f1 передаем аргумент mac, если сделать во второй функции print mac:
00:19:5b:fe:56:5b
00:19:5b:fe:56:86
00:19:5b:fe:78:e7
получается что он выводит с отступом новой строки, следовательно если переменную mac вставить в цикл то он будет обрывать цикла ему не нравиться новая строка и цикл прекращается.
def f2(mac):
files = fileinput.input(glob.glob('vlan*.txt'))
for line in files:
if mac in line:
return line
Вопрос, как тогда скормить ему мои переменные в цикл?
Офлайн
А что функция f2 должна делать?
Офлайн