Hallo Herr Schnoor, ein Mehrzeilenstring (MZS) ist ein String, der über mehrere Zeilen geht, eingeschlossen in Dreifach-Anführungszeichen (einfache ''' oder doppelte """). Auch wenn Sie den Ausdruck, den Begriff oder die Sache nicht kennen -- ziffern ist ein solcher MZS. Das manchmal Erwünschte, hier aber Unerwünschte ist folgendes: ALLE Zeilenumbrüche (durch die Tastatur eingefügt mittels ENTER) sind Teil des Strings, werden mit ausgedruckt, und mitgezählt bei der Längenberechnung durch len(). Daher zieht Ihr Argument mit der Ausgabe Ihres Programms nicht.
Infos zu MZS : https://stackabuse.com/three-ways-to-create-multiline-strings-in-python/ Offensichtlich haben Sie die Ausgabe meines Versuchs, die Defekte des MZS <ziffern> sichtbar zu machen durch mein MiniProg z = ziffern num1 = len(z) num2 = len(set(z)) # set(z) = Menge der VERSCHIEDENEN Zeichen in z print(num1, num2, num1 - num2) # >> 4115 3983 132 mehrfach = sorted( set( [ x for x in z if (z.count(x) > 1 or x in "\t\n ") ] ) ) for i, ch in enumerate(mehrfach): print("[%d] >%s< %6d (%d-mal)" % (i+1, ch, ord(ch), z.count(ch))) bislang nicht zu sehen bekommen. Daher präsentiere ich diese Ausgabe hier: 4115 3983 132 ## Kommentar: ziffern enthält 4115 Zeichen, davon 3983 verschiedene, die Differenz zwischen beiden Zahlen ist 132. [1] > < 10 (56-mal) [2] > < 32 (1-mal) [3] >क< 2325 (2-mal) [4] >ख< 2326 (2-mal) [5] >ग< 2327 (2-mal) [6] >ज< 2332 (2-mal) [7] >ड< 2337 (2-mal) [8] >़< 2364 (9-mal) [9] >ড< 2465 (2-mal) [10] >ঢ< 2466 (2-mal) [11] >য< 2479 (2-mal) [12] >়< 2492 (3-mal) [13] >ଡ< 2849 (2-mal) [14] >ଢ< 2850 (2-mal) [15] >଼< 2876 (2-mal) [16] >ཀ< 3904 (2-mal) [17] >ག< 3906 (2-mal) [18] >ཌ< 3916 (2-mal) [19] >ད< 3921 (2-mal) [20] >བ< 3926 (2-mal) [21] >ཛ< 3931 (2-mal) [22] >ྷ< 4023 (5-mal) [23] >᧠< 6624 (2-mal) [24] >᧡< 6625 (2-mal) [25] >᧢< 6626 (2-mal) [26] >᧣< 6627 (2-mal) [27] >᧤< 6628 (2-mal) [28] >᧥< 6629 (2-mal) [29] >᧦< 6630 (2-mal) [30] >᧧< 6631 (2-mal) [31] >᧨< 6632 (2-mal) [32] >᧩< 6633 (2-mal) [33] >᧭< 6637 (2-mal) [34] >ᱪ< 7274 (2-mal) [35] >ᱫ< 7275 (2-mal) [36] >ᱬ< 7276 (2-mal) [37] >ᱭ< 7277 (2-mal) [38] >Ა< 7312 (2-mal) [39] >Ბ< 7313 (2-mal) [40] >Გ< 7314 (2-mal) [41] >Დ< 7315 (2-mal) [42] >Ე< 7316 (2-mal) [43] >Ვ< 7317 (2-mal) [44] >Ზ< 7318 (2-mal) [45] >Თ< 7319 (2-mal) [46] >Ი< 7320 (2-mal) [47] >Კ< 7321 (2-mal) [48] >Ლ< 7322 (2-mal) [49] >Მ< 7323 (2-mal) [50] >Ნ< 7324 (2-mal) [51] >Ო< 7325 (2-mal) [52] >Პ< 7326 (2-mal) [53] >Ჟ< 7327 (2-mal) [54] >Რ< 7328 (2-mal) [55] >Ს< 7329 (2-mal) [56] >Ტ< 7330 (2-mal) [57] >Უ< 7331 (2-mal) [58] >卑< 21329 (2-mal) [59] >卒< 21330 (2-mal) [60] >卓< 21331 (2-mal) [61] >協< 21332 (2-mal) [62] >单< 21333 (2-mal) [63] >卖< 21334 (2-mal) [64] >南< 21335 (2-mal) [65] >単< 21336 (2-mal) [66] >卙< 21337 (2-mal) [67] >博< 21338 (2-mal) [68] >卛< 21339 (2-mal) MIt diesem Ziffernstring, der knapp 70 Zeichen mehrfach enthält, kann man kein gültiges 4096-Zahlensystem "betreiben". Nachbessern bedeutet folglich: 1) die Mehrfachzeichen tilgen (dann sind noch 3982 Zeichen vorhanden) 2) die Zeichenliste so erweitern, dass Zahlen zur Basis 4096 (wie vorgeblich intendiert) korrekt kodiert und dekodiert werden können. Sie können natürlich auch alles so belassen, wie es ist. Dann haben Sie allerdings KEIN fehlerfrei arbeitendes 4096-Zahlensystem. Denn der Ziffernstring eines Zahlensystems darf jedes Ziffernzeichen nur GENAU EINMAL enthalten. Info zu Stellenwertsystemen : https://mathepedia.de/Positionssysteme.html W. Buechel _______________________________________________ python-de Mailingliste -- python-de@python.org Zur Abmeldung von dieser Mailingliste senden Sie eine Nachricht an python-de-le...@python.org https://mail.python.org/mailman3/lists/python-de.python.org/ Mitgliedsadresse: arch...@mail-archive.com