Kirjoittaja Aihe: chr-funktio pythonissa (ratkaistu)  (Luettu 2144 kertaa)

seniori

  • Käyttäjä
  • Viestejä: 83
    • Profiili
chr-funktio pythonissa (ratkaistu)
« : 26.07.09 - klo:09.02 »
Yritin chr-funktiolla tutkia mitä merkkejä saan pythonilla kuvaruutuun mutta yli chr(126) ei tulostu mitään IDLE-editorilla.
suoraan päätteessä tulostuu  chr(128) -> '\x80' jne eli koodiluvun heksa-arvo. Saakos noita merkkejä jollain asetuksella näkyviin taipitäisikö valita jokin tietty merkistö (miten). Itse chr-funktio hyväksyy syötteeksi luvun väliltä 0-255 . Käytän ubuntu 9.04 ja pythonina versio 2.6.2 sekä sille sopiva IDLE.
« Viimeksi muokattu: 26.07.09 - klo:14.52 kirjoittanut seniori »

SuperOscar

  • Käyttäjä
  • Viestejä: 4064
  • Ocatarinetabellatsumtsum!
    • Profiili
    • Legisign.org
Vs: chr-funktio pythonissa
« Vastaus #1 : 26.07.09 - klo:10.41 »
Äkkiseltään arvelisin kyse olevan siitä, että chr() tulostaa yksitavuisen merkin. Ubuntu käyttää UTF-8-merkistöä, jossa merkit 0...127 ovat samat kuin ASCIIssa, mutta siitä eteenpäin käytetään kahta tavua. Jos yrität tulostaa chr()-funktiolla merkin, jonka koodi on >= 128, UTF-8 ei pysty esittämään sitä.

Käytä funktiota unichr().
pöytäkone 1, NUC: openSUSE Leap 15.6, kannettavat 1–3: Debian GNU/Linux 12; pöytäkone 2: openSUSE Tumbleweed; RPi 1: FreeBSD 14-RELEASE; RPi 2: LibreELEC 11

seniori

  • Käyttäjä
  • Viestejä: 83
    • Profiili
Vs: chr-funktio pythonissa (ratkaistu)
« Vastaus #2 : 26.07.09 - klo:14.55 »
Kiitos, kokeilin merkkejä lukuarvoon 2000 asti ja vaikka mitä näyttää löytyvän, onkohan niitä 65536 erilaista?
Jos siis ovat kahden tavun mittaisia.