a = 'abc\ndef' b = "ab'cd" c = """multiline string""" # Strings support slicing (negative index starts from the end): x = "hello"[2:4] # "ll" y = "hello"[1:-1] # "ell" z = "hello"[:4] # "hell"# Slice steps can be used, too: s = "hello"[::2] # "hlo" t = "hello"[3:0:-1] # "lle"สตริงไม่สามารถทำซ้ำได้โดยตรง ให้ใช้เมธอด
.elems()
เพื่อทำซ้ำตามอักขระ ตัวอย่าง"bc" in "abcd" # evaluates to True x = [s for s.elems() in "abc"] # x == ["a", "b", "c"]ไม่อนุญาตให้ใช้การต่อสตริงแบบโดยนัย โปรดใช้โอเปอเรเตอร์
+
แทน โอเปอเรเตอร์การเปรียบเทียบจะทำการเปรียบเทียบแบบพจนานุกรม และใช้ ==
เพื่อทดสอบความเท่ากัน
สมาชิก
- ตัวพิมพ์ใหญ่
- จำนวน
- Elm
- ลงท้ายด้วย
- ค้นหา
- รูปแบบ
- ดัชนี
- isalnum
- isalpha
- เลขประจำตัว
- ช้าลง
- isspace
- ชื่อ [istitle]
- isupper
- join
- ต่ำลง
- แถบข้อความ
- พาร์ติชัน
- removeprefix
- นำคำต่อท้ายออก
- แทนที่
- ค้นหา
- rindex
- พาร์ติชัน
- RSPlit
- แถบข้อความ
- แยก
- เส้นแบ่ง
- startswith
- แถบ
- ชื่อ [title]
- ส่วนบน
ตัวพิมพ์ใหญ่
string string.capitalize()แสดงผลสำเนาของสตริงที่มีอักขระตัวแรก (หากมี) เป็นตัวพิมพ์ใหญ่และตัวพิมพ์เล็กที่เหลือ เมธอดนี้ไม่รองรับอักขระที่ไม่ใช่ ASCII
จำนวน
int string.count(sub, start=0, end=None)แสดงผลจำนวนรายการ (ไม่ซ้อนทับ) ของสตริงย่อย
sub
ในสตริง โดยสามารถเลือกจำกัดอยู่ที่ [start:end]
, start
โดยรวม และ end
ไม่รวม
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
sub
|
ต้องระบุ สตริงย่อยที่จะนับ |
start
|
int; or None ; default = 0จำกัดเฉพาะการค้นหาจากตำแหน่งนี้ |
end
|
int; or None ; ค่าเริ่มต้น = ไม่มีตำแหน่งที่ไม่บังคับซึ่งมาก่อนที่จะจำกัดในการค้นหา |
Elms
sequence string.elems()แสดงผลค่าที่ซ้ำได้ซึ่งมีสตริงย่อย 1 องค์ประกอบต่อเนื่องของสตริง เทียบเท่ากับ
[s[i] for i in range(len(s))]
เว้นแต่ว่าค่าที่แสดงผลจะไม่ใช่รายการ
ลงท้ายด้วย
bool string.endswith(sub, start=0, end=None)แสดงผลเป็น "จริง" หากสตริงลงท้ายด้วย
sub
หากไม่ใช่ "เท็จ" โดยจะเลือกจํากัดเฉพาะ [start:end]
, start
โดยรวมและ "end
" เป็นเฉพาะตัว
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
sub
|
string; or tuple of strings
ต้องระบุส่วนต่อท้าย (หรือ tuple ของคำต่อท้ายอื่น) เพื่อจับคู่ให้ตรงกัน |
start
|
int; or None ; ค่าเริ่มต้น = 0โดยเริ่มที่ตำแหน่งนี้ |
end
|
int; or None ; ค่าเริ่มต้น = ไม่มีตำแหน่งที่ไม่บังคับซึ่งจะหยุดเปรียบเทียบ |
ค้นหา
int string.find(sub, start=0, end=None)แสดงผลดัชนีแรกที่พบ
sub
หรือ -1 หากไม่มีดัชนีดังกล่าว เลือกจำกัดที่ [start:end]
, start
รวม และ end
ไม่รวม
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
sub
|
ต้องระบุ สตริงย่อยที่จะค้นหา |
start
|
int; or None ; default = 0จำกัดเฉพาะการค้นหาจากตำแหน่งนี้ |
end
|
int; or None ; ค่าเริ่มต้น = ไม่มีตำแหน่งที่ไม่บังคับซึ่งมาก่อนที่จะจำกัดในการค้นหา |
รูปแบบ
string string.format(*args, **kwargs)ทําการประมาณค่าในช่วงสตริง สตริงรูปแบบมีช่องแทนที่ล้อมรอบด้วยวงเล็บปีกกา
{}
สิ่งใดก็ตามที่ไม่ได้อยู่ในวงเล็บจะถือว่าเป็นข้อความตามตัวอักษร ซึ่งจะถูกคัดลอกไปยังเอาต์พุตโดยไม่มีการเปลี่ยนแปลง หากต้องการใส่อักขระวงเล็บปีกกาในข้อความตามตัวอักษร สามารถใช้อักขระหลีกเป็น 2 ชั้นได้ดังนี้ {{
และ }}
ช่องแทนที่อาจเป็นชื่อ ตัวเลข หรือเว้นว่างไว้ก็ได้ ระบบจะแปลงค่าเป็นสตริงโดยใช้ฟังก์ชัน str# Access in order: "{} < {}".format(4, 5) == "4 < 5" # Access by position: "{1}, {0}".format(2, 1) == "1, 2" # Access by name: "x{key}x".format(key = 2) == "x2x"
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
args
|
default = () รายการอาร์กิวเมนต์ |
kwargs
|
ค่าเริ่มต้น = {} พจนานุกรมของอาร์กิวเมนต์ |
index
int string.index(sub, start=0, end=None)แสดงผลดัชนีแรกที่พบ
sub
หรือเพิ่มข้อผิดพลาดหากไม่มีดัชนีดังกล่าว โดยเลือกที่จะจํากัดเฉพาะ [start:end]
start
โดยรวม และ end
ไม่รวม
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
sub
|
ต้องระบุ สตริงย่อยที่จะค้นหา |
start
|
int; or None ; default = 0จำกัดเฉพาะการค้นหาจากตำแหน่งนี้ |
end
|
int; or None ; ค่าเริ่มต้น = ไม่มีตำแหน่งที่ไม่บังคับซึ่งมาก่อนที่จะจำกัดในการค้นหา |
Isalnum
bool string.isalnum()แสดงค่า "จริง" หากอักขระทั้งหมดในสตริงเป็นตัวอักษรและตัวเลขคละกัน ([a-zA-Z0-9]) และมีอักขระอย่างน้อย 1 ตัว
Isalpha
bool string.isalpha()แสดงค่า "จริง" หากทุกอักขระในสตริงเป็นตัวอักษร ([a-zA-Z]) และมีอักขระอย่างน้อยหนึ่งตัว
isdigit
bool string.isdigit()แสดงค่า "จริง" หากอักขระทั้งหมดในสตริงเป็นตัวเลข ([0-9]) และมีอักขระอย่างน้อย 1 ตัว
โลว์เออร์
bool string.islower()แสดงค่า "จริง" หากอักขระทุกตัวที่กำหนดตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ในสตริงเป็นตัวพิมพ์เล็กและมีอักขระอย่างน้อย 1 ตัว
Isspace
bool string.isspace()แสดงค่า "จริง" หากอักขระทั้งหมดเป็นอักขระเว้นวรรค และสตริงมีอักขระอย่างน้อยหนึ่งตัว
ชื่อ
bool string.istitle()แสดงผลเป็น "จริง" หากสตริงอยู่ในลักษณะตัวพิมพ์ของหัวข้อและมีอักขระอย่างน้อย 1 ตัว ซึ่งหมายความว่าอักขระตัวพิมพ์ใหญ่ทุกตัวต้องอยู่หลังอักขระที่ไม่ได้พิมพ์ (เช่น ช่องว่าง) และอักขระตัวพิมพ์เล็กทุกตัวต้องอยู่หลังอักขระพิมพ์ใหญ่ 1 ตัว (เช่น ตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็ก)
Isupper
bool string.isupper()แสดงค่า "จริง" หากอักขระทั้งหมดที่เป็นตัวพิมพ์ใหญ่ในสตริงเป็นตัวพิมพ์ใหญ่และมีอักขระอย่างน้อย 1 ตัว
join
string string.join(elements)แสดงผลสตริงที่มีการรวมองค์ประกอบสตริงของอาร์กิวเมนต์ด้วยสตริงนี้เป็นตัวคั่น ตัวอย่าง
"|".join(["a", "b", "c"]) == "a|b|c"
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
elements
|
ต้องระบุ ออบเจ็กต์ที่จะรวม |
ต่ำกว่า
string string.lower()แสดงผลเวอร์ชันตัวพิมพ์เล็กของสตริงนี้
แถบรายการ
string string.lstrip(chars=None)แสดงผลสำเนาของสตริงที่นำอักขระนำหน้าที่ปรากฏใน
chars
ออก โปรดทราบว่า chars
ไม่ใช่คำนำหน้า: นำชุดค่าผสมทั้งหมดออก ดังนี้"abcba".lstrip("ba") == "cba"
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
chars
|
string; or None ; ค่าเริ่มต้น = ไม่มีอักขระที่ต้องการนำออกหรือการเว้นวรรคทั้งหมดหากไม่มี |
พาร์ติชัน
tuple string.partition(sep)แยกสตริงอินพุตที่รายการแรกของตัวคั่น
sep
และแสดงผลพาร์ติชันผลลัพธ์เป็น Tuple 3 เอลิเมนต์ของแบบฟอร์ม (ก่อน ตัวคั่น หลัง) หากสตริงอินพุตไม่มีตัวคั่น พาร์ติชันจะแสดงผล (ตัวเอง, '', '')
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
sep
|
ต้องระบุ สตริงที่จะแยก |
นำคำนำหน้าออก
string string.removeprefix(prefix)หากสตริงขึ้นต้นด้วย
prefix
ระบบจะแสดงผลสตริงใหม่ที่มีการนำคำนำหน้าออก หรือไม่เช่นนั้น ก็แสดงผลสตริง
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
prefix
|
ต้องระบุ คำนำหน้าที่จะนำออกหากมี |
นำส่วนต่อท้ายออก
string string.removesuffix(suffix)หากสตริงลงท้ายด้วย
suffix
ระบบจะแสดงผลสตริงใหม่ที่มีส่วนต่อท้ายที่ถูกนำออก หรือไม่เช่นนั้น ก็แสดงผลสตริง
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
suffix
|
ต้องระบุ ส่วนต่อท้ายที่จะนำออก หากมี |
แทนที่
string string.replace(old, new, count=-1)แสดงผลสำเนาของสตริงที่แทนที่รายการ
old
ด้วย new
โดยเลือกที่จะจำกัดจำนวนการแทนที่ไว้ที่ maxsplit
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
old
|
ต้องระบุ สตริงที่จะถูกแทนที่ |
new
|
ต้องระบุ สตริงที่จะใช้แทนที่ |
count
|
ค่าเริ่มต้น = -1 จำนวนสูงสุดของการแทนที่ หากไม่ระบุ หรือหากค่าเป็นลบ ก็จะไม่มีการจำกัดจำนวน |
Rfind
int string.rfind(sub, start=0, end=None)แสดงผลดัชนีล่าสุดเมื่อพบ
sub
หรือ -1 หากไม่มีดัชนีดังกล่าว อาจเลือกจำกัดเฉพาะ [start:end]
, start
รวม และ end
ไม่รวม
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
sub
|
ต้องระบุ สตริงย่อยที่จะค้นหา |
start
|
int; or None ; default = 0จำกัดเฉพาะการค้นหาจากตำแหน่งนี้ |
end
|
int; or None ; ค่าเริ่มต้น = ไม่มีตำแหน่งที่ไม่บังคับซึ่งมาก่อนที่จะจำกัดในการค้นหา |
Rindex
int string.rindex(sub, start=0, end=None)แสดงผลดัชนีล่าสุดเมื่อพบ
sub
หรือเพิ่มข้อผิดพลาดหากไม่มีดัชนีดังกล่าว โดยเลือกที่จะจํากัดเฉพาะ [start:end]
, start
แบบรวม และไม่รวม end
เท่านั้น
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
sub
|
ต้องระบุ สตริงย่อยที่จะค้นหา |
start
|
int; or None ; default = 0จำกัดเฉพาะการค้นหาจากตำแหน่งนี้ |
end
|
int; or None ; ค่าเริ่มต้น = ไม่มีตำแหน่งที่ไม่บังคับซึ่งมาก่อนที่จะจำกัดในการค้นหา |
Rpartition
tuple string.rpartition(sep)แยกสตริงอินพุตที่รายการสุดท้ายของตัวคั่น
sep
และแสดงผลพาร์ติชันผลลัพธ์เป็น Tuple 3 เอลิเมนต์ของแบบฟอร์ม (ก่อน ตัวคั่น หลัง) หากสตริงอินพุตไม่มีตัวคั่น พารามิเตอร์จะแสดงผล ('', '', ในตัว)
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
sep
|
ต้องระบุ สตริงที่จะแยก |
RSPlit
list string.rsplit(sep, maxsplit=None)แสดงรายการคำทั้งหมดในสตริง โดยใช้
sep
เป็นตัวคั่น โดยจะจำกัดจำนวนการแยกไว้ที่ maxsplit
(ไม่บังคับ) เมธอดนี้ทำงานเหมือนกับการแยก() ยกเว้นการแยกจากด้านขวา
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
sep
|
ต้องระบุ สตริงที่จะแยก |
maxsplit
|
int; or None ; ค่าเริ่มต้น = ไม่มีจำนวนสูงสุดของการแยก |
RStrip
string string.rstrip(chars=None)แสดงผลสำเนาของสตริงที่นำอักขระต่อท้ายที่ปรากฏใน
chars
ออก โปรดทราบว่า chars
ไม่ใช่คำต่อท้าย: นำชุดค่าผสมทั้งหมดออก ดังนี้"abcbaa".rstrip("ab") == "abc"
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
chars
|
string; or None ; ค่าเริ่มต้น = ไม่มีอักขระที่ต้องการนำออกหรือการเว้นวรรคทั้งหมดหากไม่มี |
ข้อมูลแบบแยกส่วน
list string.split(sep, maxsplit=None)แสดงรายการคำทั้งหมดในสตริง โดยใช้
sep
เป็นตัวคั่น โดยจะจำกัดจำนวนการแยกไว้ที่ maxsplit
(ไม่บังคับ)
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
sep
|
ต้องระบุ สตริงที่จะแยก |
maxsplit
|
int; or None ; ค่าเริ่มต้น = ไม่มีจำนวนสูงสุดของการแยก |
เส้นแบ่ง
sequence string.splitlines(keepends=False)แยกสตริงที่ขอบเขตบรรทัด ('\n', '\r\n', '\r') และแสดงผลเป็นรายการที่เปลี่ยนแปลงได้ใหม่
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
keepends
|
default = False ควรรวมตัวแบ่งบรรทัดไว้ในรายการผลลัพธ์ไหม |
startswith
bool string.startswith(sub, start=0, end=None)แสดงผลเป็น "จริง" หากสตริงขึ้นต้นด้วย
sub
ไม่เช่นนั้นเป็น "เท็จ" เลือกที่จะจํากัดเฉพาะ [start:end]
, start
โดยรวม และ end
เป็นเฉพาะตัว
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
sub
|
string; or tuple of strings
ต้องระบุคำนำหน้า (หรือ tuple ของคำนำหน้าสำรอง) ในการจับคู่ |
start
|
int; or None ; ค่าเริ่มต้น = 0โดยเริ่มที่ตำแหน่งนี้ |
end
|
int; or None ; ค่าเริ่มต้น = ไม่มีหยุดเปรียบเทียบที่ตำแหน่งนี้ |
Strip
string string.strip(chars=None)แสดงผลสำเนาของสตริงที่นำอักขระนำหน้าหรือตามหลังที่ปรากฏใน
chars
ออก โปรดทราบว่า chars
ไม่ใช่คํานําหน้าหรือคําต่อท้าย: ชุดค่าผสมทั้งหมดจะถูกนำออก"aabcbcbaa".strip("ab") == "cbc"
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
chars
|
string; or None ; ค่าเริ่มต้น = ไม่มีอักขระที่ต้องการนำออกหรือการเว้นวรรคทั้งหมดหากไม่มี |
title
string string.title()แปลงสตริงอินพุตให้เป็นอักษรตัวพิมพ์ใหญ่เฉพาะคำแรก เช่น ทุกคำขึ้นต้นด้วยอักษรตัวพิมพ์ใหญ่ ขณะที่ตัวอักษรที่เหลือจะเป็นตัวพิมพ์เล็ก ในบริบทนี้ คำหมายถึงลำดับตัวอักษรอย่างเคร่งครัด วิธีนี้ไม่สนับสนุนอักขระ Unicode เสริม
ส่วนบน
string string.upper()แสดงผลเวอร์ชันตัวพิมพ์ใหญ่ของสตริงนี้