Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > de.comp.lang.python > #6119

[Python-de] Re: Fwd: Keyboard coding

From "Wolli Buechel" <wjb131@web.de>
Newsgroups de.comp.lang.python
Subject [Python-de] Re: Fwd: Keyboard coding
Date 2024-07-20 14:15 +0000
Message-ID <172148490110.31598.2497888687173685957@mail.python.org> (permalink)
References <EBAC9ADB-9F2E-419E-8281-3750D2EDD53A@multi-matrix.de>

Show all headers | View raw


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

Back to de.comp.lang.python | Previous | NextPrevious in thread | Find similar


Thread

[Python-de] Re: Keyboard coding "Wolli Buechel" <wjb131@web.de> - 2024-07-19 17:50 +0000
  [Python-de] Fwd: Keyboard coding Erich Schnoor <eschnoor@multi-matrix.de> - 2024-07-20 11:25 +0200
    [Python-de] Re: Fwd: Keyboard coding "Wolli Buechel" <wjb131@web.de> - 2024-07-20 14:15 +0000

csiph-web