sp3
Март 1, 2010 17:13:29
вот так вроде бы работает
name_str = 'имя'
name_str.decode("cp1251")
if string.find(linex, name_str) != -1:
#.......
UsCr
Март 1, 2010 20:56:27
bazooka
>>> a = 'gg'
>>> b = 'lologglolo'
>>> b.find(a)
4
>>> a in b
True
>>> a = 'bb'
>>> b.find(a)
-1
>>> a in b
False
bazooka, а что этот кода кусок нам говорит? Вроде всё ожидаемо, никаких странностей…
sp3
вот так вроде бы работает
name_str = 'имя'
name_str.decode("cp1251")
if string.find(linex, name_str) != -1:
#.......
Можно писать так:
name_str = 'имя'
if string.find(linex, name_str.decode("cp1251")) != -1:
#.......
sp3
Март 1, 2010 21:20:48
bazooka
a in b
при создании строки с рус буквами в скрипте все норм работает,
но при чтении из файла….. гемор
sp3
Март 1, 2010 21:27:34
UsCr
name_str = ‘имя’ if string.find(linex, name_str.decode(“cp1251”)) != -1: #…….
UnicodeDecodeError: ‘ascii’ codec can't decode byte 0xc8 in position 0: ordinal not in range(128)
загадочный питон :)
bazooka
Март 1, 2010 21:33:10
эт я к тому что если нужно проверить есть ли подстрока в строке то может это и проверить, а не искать ее
sp3
Март 1, 2010 21:49:47
sp3
UnicodeDecodeError: ‘ascii’ codec can't decode byte 0xc8 in position 0: ordinal not in range(128)
питоновский шел висел и PyScripter : похоже изза этого все переглючило :) сейчас даже так работает
file_in ='primer.txt'
f_in = open(file_in, 'r')
name_str = 'Имя'
for linex in f_in.readlines():
if name_str in linex:
print('ok')
f_in.close()
x = raw_input('x = ')
UsCr
Март 2, 2010 08:15:29
Последнее время всё больше бодобных глюков… Видимо, приближение 2012 сказывается ;)
Divergent
Март 2, 2010 12:26:58
Составил скрипт считывающий построчно, но видимо задачку таким образом не решить. Попробовал сразу весь файл считать, но столкнулся с проблемкой.
Кусок из распечтаки содержимого переменной l
…, ‘Имя\n’, ‘1\n’, ‘\n’, ‘Привязка\n’…
Написал
if ‘Имя\n’ in l:
print ???
А вот как написать что распечатать не знаю. Мне нужно распечатать значение 1
Как это сделать?
sp3
Март 2, 2010 22:17:42
Divergent вот почти написал , доработай ;)
# -*- coding:Utf-8 -*-
file_in ='primer.txt'
file_out = 'out.txt'
f_in = open(file_in, 'r')
f_out = open(file_out, 'a')
name_str = 'Имя'
priv_str = 'Прив'
for linex in f_in.readlines():
if name_str in linex:
f_out.write('\n')
if (priv_str not in linex) and (name_str not in linex) :
linex = linex.split('\n')
f_out.write('\t%s'%linex[0]) # \t znak TAB
f_in.close()
f_out.close()