len
print(len('กขคงจ')) # ได้ 5
print(len('')) # ได้ 0
print(len(' ')) # ได้ 2
a = 'bestuurdersaansprakelijkheidsverzekering'
print(a[0]) # ได้ b
print(a[-1]) # ได้ g
print(a[int(len(a)/2)]) # ได้ l
:
เช่นกัน
a[29:40] # ได้ verzekering
a[0:40:2] # ได้ 'bsuresasrkljhisezkrn'
b = 'เขาเป็นคนป่วย'
b[9:11] = 'ร' # ได้ TypeError: 'str' object does not support item assignment
b = b[:9]+'ร'+b[11:]
print(b) # ได้ เขาเป็นคนรวย
c = 'เขาเป็นคนดี'
c += 'แต่พูด'
print(c) # ได้ เขาเป็นคนดีแต่พูด
==
จะให้ค่าเป็นจริงต่อเมื่อเหมือนกันทุกตัวอักษร
print('J' == 'j') # False เพราะพิมพ์เล็กกับพิมพ์ใหญ่ถือเป็นคนละตัว
print('J' == 'j'.upper()) #True
>
หรือน้อยกว่า <
จะเปรียบเทียบลำดับภายในยูนิโค้ดของอักษรนั้นทีละตัว โดยเลขที่มาก่อนถือว่าค่าน้อยกว่า หากเหมือนกันจึงจะพิจารณาตัวต่อไป
print('11' > '2') # False เพราะเลข 1 เทียบกับ 2 ก่อน
print('A' > 'a') # False เพราะตัวพิมพ์ใหญ่มาก่อนตัวพิมพ์เล็ก
print('ü' > 'z') # True เพราะ z เป็น ASCII แต่ ü ไม่ใช่
print('ม' > '美') # False เพราะอักษรไทยมาก่อนอักษรจีนในยูนิโค้ด
print('ア' > 'あ') # True เพราะฮิรางานะมาก่อนคาตาคานะ
.strip
print(len(' แม่นแล้ว ')) # ได้ 13
print(' แม่นแล้ว '.strip()) # ได้ แม่นแล้ว
print(len(' แม่นแล้ว '.strip())) # ได้ 8
หากต้องการตัดแค่หัวหรือท้ายอย่างเดียวก็ใช้ .lstrip
หรือ .rstrip
โดย .lstrip
จะตัดเฉพาะหัว ส่วน .rstrip
จะตัดเฉพาะท้าย
print(len(' แม่นแล้ว '.lstrip())) # ได้ 11
print(len(' แม่นแล้ว '.rstrip())) # ได้ 10
.split
โดยเมธอดนี้จะสร้างลิสต์ของสายอักขระแต่ละส่วนที่แยกได้ออกมาit = 'pasta, spaghetti, macaroni, lasagna, pizza'
ita = it.split(', ')
print(ita) # ได้ ['pasta', 'spaghetti', 'macaroni', 'lasagna', 'pizza']
fr = 'croissant baguette éclair macaron madeleine'
fra = fr.split()
print(fra) # ได้ ['croissant', 'baguette', 'éclair', 'macaron', 'madeleine']
.join
เอาไว้ใช้รวมลิสต์ของสายอักขระเข้าเป็นสายอักขระอันเดียว.join
นั้นถือเป็นเมธอดของสายอักขระโดยทำกับสายอักขระที่เป็นตัวคั่นแล้วมีอาร์กิวเมนต์เป็นลิสต์ของสายอักขระที่ต้องการรวม.split
อยู่หน่อยและอาจสับสนกันได้ ให้ดูตัวอย่างประกอบ
f = ['ยานี้ดี', 'กินแล้วแข็ง', 'แรงไม่มี', 'โรคภัยไข้เจ็บเบียดเบียน']
g = ''.join(f)
print(g) # ได้ ยานี้ดีกินแล้วแข็งแรงไม่มีโรคภัยไข้เจ็บเบียดเบียน
.join
ดูก็สามารถทำได้
f = ['ยานี้ดี', 'กินแล้วแข็ง', 'แรงไม่มี', 'โรคภัยไข้เจ็บเบียดเบียน']
g = ''
for s in f:
g += s
print(g)
\n
h = '\n'.join(['ooo','o o','ooo'])
print(h)
ooo
o o
ooo
.splitlines
เช่นลองใช้กับสายอักขระตัวเมื่อครู่
print(h.splitlines()) # ได้กลับมาเป็น ['ooo', 'o o', 'ooo']
list
แปลงเป็นลิสต์ได้เลย
print(list('กลุ่มก้อน')) # ได้ ['ก', 'ล', 'ุ', '่', 'ม', 'ก', '้', 'อ', 'น']
.upper
และ .lower
a = 'Die Flügel der Freiheit'
print(a.upper()) # ได้ DIE FLÜGEL DER FREIHEIT
print(a.lower()) # ได้ die flügel der freiheit
a = 'Αστρονομία'
print(a.upper()) # ΑΣΤΡΟΝΟΜΊΑ
print(a.lower()) # αστρονομία
a = 'pneumoultramicroscopicossilicovulcanoconioticozinhos'
b = ''
for i in range(0,len(a),2):
b += a[i].upper()
if(i<len(a)-1): b += a[i+1]
print(b) # ได้ PnEuMoUlTrAmIcRoScOpIcOsSiLiCoVuLcAnOcOnIoTiCoZiNhOs
in
เช่น
'Essen' in 'Sie sind das Essen und wir sind die Jäger' # ได้ True
g = 'Sie sind das Essen und wir sind die Jäger'
s = 'Essen'
if(s in guren):
for i in range(len(g)):
if(s not in g[i:]):
print(i-1)
break
else: print('ไม่พบคำที่ต้องการหา')
13
.find
สายอักขระ.find(คำที่ค้น, จุดเริ่มค้น, จุดสิ้นสุดการค้น)
g = 'Sie sind das Essen und wir sind die Jäger'
print(g.find('Essen')) # ได้ 13
-1
print(g.find('der')) # ได้ -1
print(g.find('sind')) # ได้ 4
.rfind
print(g.rfind('sind')) # ได้ 27
print(g.find('Sie',3)) # ได้ -1 (คือหาไม่พบ)
print(g.find('die',2,35)) # ได้ 32
print(g.find('die',2,32)) # ได้ -1 (คือหาไม่พบ)
.index
และ .rindex
ซึ่งก็ใช้ค้นหาเหมือนกัน แต่ความต่างคือหากค้นหาแล้วไม่เจอจะขึ้นขัดข้องแทนที่จะคืนค่า -1
print(g.index('Eren')) # ได้ ValueError: substring not found
.count
print(g.count('sind')) # ได้ 2
.startswith
กับ .endswith
สายอักขระ.startswith(คำที่ค้น, จุดเริ่มค้น, จุดสิ้นสุดการค้น)
สายอักขระ.endswith(คำที่ค้น, จุดเริ่มค้น, จุดสิ้นสุดการค้น)
a = 'verbrennungsanlage'
print(a.startswith('ver')) # ได้ True
print(a.startswith('ver',3)) # ได้ False
print(a.startswith('bren',3)) # ได้ True
print(a.startswith('erb',1,7)) # ได้ True
print(a.endswith('sanlage')) # ได้ True
print(a.endswith('nung',7)) # ได้ False
print(a.endswith('san',3,14)) # ได้ True
print(a.endswith('san',12,14)) # ได้ False
.replace
สายอักขระ.replace(ข้อความที่จะให้ถูกแทนที่,ข้อความที่จะนำไปแทน,จำนวนที่จะแทน)
v = 'ไก่จิกเด็กตายเด็กตายบนปากโอ่ง'
print(v.replace('เด็กตาย','เด็กเต้น')) # ได้ ไก่จิกเด็กเต้นเด็กเต้นบนปากโอ่ง
print(v.replace('เด็กตาย','โดนเตียง',1)) # ได้ ไก่จิกโดนเตียงเด็กตายบนปากโอ่ง
print(v.replace('จิกเด็กตายเด็ก','')) # ได้ ไก่ตายบนปากโอ่ง
ติดตามอัปเดตของบล็อกได้ที่แฟนเพจ