Aktywne Wpisy

kantek007 +28

Virsky +447
Ojezu, jakie to piękne uczucie :D
Dziewczyna z którą się spotykam od paru miesięcy, a w której prawie od razu się zakochałem, dzisiaj w końcu powiedziała że też mnie kocha <3
Poznać kogoś takiego jak ona, według mojego gustu czy preferencji tak bliskiego ideału jak tylko można, to sytuacja jaka nie zdarza się często. A gdy do tego okazuje się, że taka osoba odwzajemnia moje uczucia, to mniej więcej jakby wygrać w
Dziewczyna z którą się spotykam od paru miesięcy, a w której prawie od razu się zakochałem, dzisiaj w końcu powiedziała że też mnie kocha <3
Poznać kogoś takiego jak ona, według mojego gustu czy preferencji tak bliskiego ideału jak tylko można, to sytuacja jaka nie zdarza się często. A gdy do tego okazuje się, że taka osoba odwzajemnia moje uczucia, to mniej więcej jakby wygrać w




Program pisany przeze mnie w pythonie wywala sie, gdy w zasysanej linijce (linechache.getline) pojawiaja sie polskie znaki (ą, ę, ć). Teoretycznie zmienilem kodowanie pliku z danymi do utf 8, ale nie ma zmian (jak zastapie ww znaki bezogonkowcami, to dziala). Mam gdzies w programie deklarowac jakie jest kodowanie pliku (bo kodowanie uzywane w programie to wiem, ze deklaruje sie na początku)? I tak, niespecjalnie umiem w programowanie :P
#programowanie #python
from __future__ imort unicode_literals@thomeq: jaki python? Na pewno masz poprawnie https://www.python.org/dev/peps/pep-0263/ ?
kod:
#!/usr/bin/env python
# -*- coding: utf 8 -*-
import linecache
print ("hhhh")
tekst1 = linecache.getline('daneutf8.txt', 37)
# tekst1 = unicode(tekst)
# tekst2 = str(linecache.getline('dane2.txt', 3))
'''
czasTrwania = int(tekst2[1:3]) * 3600 + int(tekst2[4:6]) * 60 + int(tekst2[7:9]) - (int(tekst1[1:3]) * 3600 + int(tekst1[4:6]) * 60 + int(tekst1[7:9]))
'''
print tekst1
# print tekst2
# print len(tekst2)
dlugosc = len(tekst1)
print ("Dlugosc wiersza wynosi: " + str(dlugosc))
# print czasTrwania
kod:
#!/usr/bin/env python
# -- coding: utf 8 --
import linecache
tekst1 = linecache.getline('dane.txt', 37)
print tekst1
dlugosc = len(tekst1)
print ("Dlugosc wiersza wynosi: " + str(dlugosc))
for i in range(dlugosc):
print str(i) + " " + tekst1[i]
Plik (a raczej linijka, na ktorej sie wywala):
P Nie mogę zasnąć Marcelina
unicode_literalsnie potrzebujesz a Twoja deklaracja powinna wyglądać trochę inaczej# -*- coding: utf-8 -*-http://pastebin.com/Gh2EBtyn
@thomeq: Tak jak kolega @gofr juz zasugerował, masz linie j/w błedną
getlinezlinecacherzuca pusty string w przypadku błędów, więc pewnie coś nie halo z plikiem (w ogóle nie wczytuje, linijka nie istnijeje lub jest putsa). Musiałbyś też pokazać plik, na którym operujesz.linecache? Jeśli masz zamiar wczytywać zawartość pliku, linijka po linijce, to lepiej wykorzystaj interfejs z bibliotekiio. Tutaj przykład:with io.open('daneutf8.txt', 'r', encoding='utf-8') as template:____for line in template:
________print line
Na pewno musze móc wczytywac kolejne linijki w petli, a w nich skakac po pozycjach i odczytywac konkretne rzeczy :)
> cat lol.txt18:13:57 PLY 05 F015578P Nie mogę zasnąć Marcelina BLK
18:13:57 PLY 05 F015578P Nie moge zasnac Marcelina BLK
In [1]: import linecacheIn [2]: linecache.getline('lol.txt', 1)Out[2]: ' 18:13:57 PLY 05 F015578P Nie mog\xc4\x99 zasn\xc4\x85\xc4\x87 Marcelina BLK\n'
In [3]: linecache.getline('lol.txt', 2)Out[3]: ' 18:13:57 PLY 05 F015578P Nie moge zasnac Marcelina BLK\n'
Spróbuj metodą na warszawskiego cwaniaczka, czyli