String típus


A Python 3-ban minden karakterlánc UTF-8 kódolású Unicode karakterek sorozata.

Az UTF-8 egy változó hosszúságú kódolási rendszer a Unicode-hoz. Ez azt jelenti, hogy különböző karakterek különböző számú bájtot foglalnak. Az ASCII karakterekhez (A-Z stb.) az UTF-8 karakterenként csak egy bájtot használ. Tulajdonképpen pontosan ugyanazokat a bájtokat használja. Az UTF-8 első 128 karaktere (0–127) megkülönböztethetetlen az ASCII-étól. A „kiterjesztett latin” karakterek, mint a ñ és ö két bájtot foglalnak. A kínai karakterek, mint a 中 három bájtot foglalnak. (A ritkán használt „asztrálsík” karakterek négy bájtot.)



Értékadás, string-szeletelés

Művelet Eredmény, megjegyzés
a = "Batman", a = 'Batman' a felveszi a Batman értéket
a[0], a[5], a[1:4], a[4:6],     a[3:], a[:3], a[::2] 'B', 'n', 'atm' / a 4. nincs! /, 'an',     'man', 'Bat', 'Bta' / minden 2.! /
a[-3], a[-6],     a[-3:], a[:-3],     a[::-1] 'm', 'B',     'man', 'Bat',     'namtaB' / fordítva! /
b, c, d = a + "72", a*3, "" a b 'Batman72' lesz, a c 'BatmanBatmanBatman', a d pedig '' / többszörös értékadás! /
len(a), len(b), len(c), len(d) a stringek hossza: 6, 8, 18, 0 / a d üres string /
ord("C"), chr(67) "C" kódja 67, 67 kódú karakter "C"

String trükkök

s = '''Ez egy
többsoros string lesz. Itt el-
választottam.'''

működne három macskakörömmel is


Néhány gyakori sztring metódus

s.lower(), s.upper() az s sztring kisbetűs, nagybetűs verziójával tér vissza
s.strip('par'), s.lstrip('par'),s.rstrip('par') a whitespace karaktereket levágja a sztring mindkét feléről, elejéről, végéről (ha paramétert kap, ezt vágja le a szélekről)
s.isalpha(), s.isdigit(), s.isspace()... megnézi, hogy a sztring vmennyi karaktere az adott karakterosztályba tartozik-e
s.startswith('other'), s.endswith('other') megnézi, hogy a sztring a 'other' sztringgel kezdődik-e ill. végződik-e
s.find('other')
  vagy
s.index('other')
a sztringben szerepel-e a 'other' sztring (nem reguláris kifejezésként adjuk meg)
ha igen, akkor az első előfordulás első karakterének indexével tér vissza
ha nem, akkor -1 a visszatérési érték
s.replace('old', 'new') a sztringben az 'old' vmennyi előfordulását 'new'-ra cseréli
s.count('E') megszámolja a sztringben a "E" betűk számát
s.split('delim') a sztringet az adott szeparátor mentén részsztringek listájára bontja a szeparátor nem reguláris kifejezés. Példa: 'aaa,bbb,ccc'.split(',') – ['aaa', 'bbb', 'ccc']
ha csak s.split()-et írunk, akkor a whitespace karakterek mentén bontja fel a sztringet
s.join(list) a split() ellentéte, egy lista elemeit kapcsolja össze egy adott szeparátorral (ez lesz az s sztring)
példa: '---'.join(['aaa', 'bbb', 'ccc']) -> aaa---bbb---ccc

gyires.inf.unideb.hu - stringek
Formátum specifikáció "Mini-Nyelv"