Hi,
weis zufällig irgendjemand wie ich die Zeichen einer Datei mit Ansi Decodierung in Integers umwandeln kann?
Mein derzeitiger Code:
t='file'
with open(t, 'r') as f:
for i in range(238183):
b.append(f.readline())
res = [ord(ele) for sub in b for ele in sub]
Ansi zu Integer
- __blackjack__
- User
- Beiträge: 13007
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@Django Unchained: Was ist denn bitte „Ansi Decodierung“? Der Code funktioniert ganz offensichtlich nicht, denn weder `b` noch das eine `sub` sind definiert. Das in *einer* „list comprehension“ zweimal der Name `sub` für verschiedene Objekte vorkommt ist mehr als unübersichtlich.
An den Namen sollte man auch dringend arbeiten.
Wo kommt die magische 238183 her? Und `readline()` ist hier so ziemlich das ineffizienteste was man machen kann. Die Methode macht nur ganz ganz selten Sinn.
An den Namen sollte man auch dringend arbeiten.
Wo kommt die magische 238183 her? Und `readline()` ist hier so ziemlich das ineffizienteste was man machen kann. Die Methode macht nur ganz ganz selten Sinn.
“Most people find the concept of programming obvious, but the doing impossible.” — Alan J. Perlis
versuch doch mal:
Information bzgl. encoding:
https://docs.python.org/3/library/functions.html#open
Code: Alles auswählen
result = []
t='file'
with open(t, 'r', encoding='ansi') as ansi_file:
lines = ansi_file.readlines()
for line in lines:
for character in line:
result.append(ord(character))
https://docs.python.org/3/library/functions.html#open
- __blackjack__
- User
- Beiträge: 13007
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
Bitte nicht "ansi" als Kodierung verwenden. Das ist krank, kaputt, und funktioniert nur unter Windows, weil es da genug Vollhonks gibt, die der Meinung sind "ANSI" sei eine Kodierung und Python sich *nur auf Windows* der Dummheit der Massen gebeugt hat. Python ist halt ein bisschen rückratlos.
“Most people find the concept of programming obvious, but the doing impossible.” — Alan J. Perlis
`utf-∞` ist immer noch das beste Encoding:
Code: Alles auswählen
In [1]: with open("foo", "w", encoding="utf-∞") as file:
...: file.write("Bestes Encoding: utf-∞\n")
...:
In [2]: !cat foo
Bestes Encoding: utf-∞