Форум сайта python.su
Подскажите при помощи каких команд написать небольшой скрипт.
Есть лог файл, где идёт распечатка.
Пример.
Имя
1
Привязка
11
Привязка
12
Имя
2
Привязка
нет
Имя
3
Привязка
31
Привязка
32
Привязка
33
1[Знак табуляции]11[Знак табуляции]12
2[Знак табуляции]нет
3[Знак табуляции]31[Знак табуляции]32[Знак табуляции]33
Офлайн
Ну совсем ленивые нубы пошли:((((((
Вам что надо? Прочитать файл? В любом учебнике есть.
Обработать строковый результат? Так же в любом учебнике.
Вы поймите, я не троль и не выпен-ваюсь, но вам же лучше будет, если сами хоть немного пошевелите мозгами и руками.
Читайте, пробуйте, пишите, если не получится - тогда задавайте вопросы, С РАДОСТЬЮ ОТВЕЧУ, а с тем, что вы спрашиваете даже школьник справиться. Вы же не глупее школьника?
Офлайн
Я думаю простым открытием, прочтением и записью здесь не обойтись.
Спасибо.
Офлайн
Что-то не понял: строки со значением “Имя” и “Привязка” входят в лог?Если да,то можно просто вначале split'ом разбить лог на массив,и дальше в нем ковыряться.Типа log.split(“Имя”).И выйдет массив из одних привязок.Дальше удаляем пробелы и заменяем все слова “Привязка” на знак табуляции
Офлайн
Да…они входят в лог. Думаю здесь нужны функции “если” У имени может быть несколько привязок…если бы их былоточное количество, то былоб проще, а так неизвестно.
Офлайн
DivergentИ что? Неужели ни в одном учебнике не написано об if?
Думаю здесь нужны функции “если”
Офлайн
Если это так просто , то неужели не написать как? По исходнику явно проще разбираться. Я же пишу в ветку для новичков, а не для ассов.
Просто непонятно как ветвить, но попробую…скину что получится, если получится.
Отредактировано (Март 1, 2010 12:49:32)
Офлайн
# -*- coding: koi8-r -*-
import string
file_in ='primer.txt'
f_in = open(file_in, 'r')
for linex in f_in.readlines():
if string.find(linex, 'Имя') != -1:
print('ohhhooo')
f_in.close()
x = raw_input('x = ')
Отредактировано (Март 1, 2010 13:24:45)
Офлайн
sp3Так работает?
старнно: если указать в поиске англ буквы то норм, а русские невидит
# -*- coding: koi8-r -*-
import string
file_in ='primer.txt'
f_in = open(file_in, 'r')
for linex in f_in.readlines():
if string.find(linex, u'Имя') != -1:
print('ohhhooo')
f_in.close()
x = raw_input('x = ')
Офлайн
если поставить u'имя' выдает ошибку:
Traceback (most recent call last):
File “C:\py26\name_priv.py”, line 16, in <module>
if string.find(linex, u'РёРјСЏ') != -1:
File “C:\py26\lib\string.py”, line 361, in find
return s.find(*args)
UnicodeDecodeError: ‘ascii’ codec can't decode byte 0xc8 in position 0: ordinal not in range(128)
Офлайн