ประเภทภาษาในตัวที่รองรับสตริง ตัวอย่างสตริงลิเทอรัล:
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 = [c for c in "abc".elems()] # x == ["a", "b", "c"]ไม่อนุญาตให้ใช้การต่อสตริงโดยนัย ให้ใช้โอเปอเรเตอร์
+
แทน โอเปอเรเตอร์การเปรียบเทียบจะทำการเปรียบเทียบตามลําดับตัวอักษร ใช้ ==
เพื่อทดสอบความเท่าเทียม
สมาชิก
- capitalize
- count
- elems
- endswith
- find
- format
- ดัชนี
- isalnum
- isalpha
- เลขรหัส
- islower
- isspace
- ชื่อ
- isupper
- join
- ต่ำลง
- lstrip
- พาร์ติชัน
- นำคำนำหน้าออก
- removesuffix
- แทนที่
- rfind
- rindex
- rpartition
- rsplit
- แถบข้อความ
- แยก
- เส้นแบ่ง
- startswith
- strip
- ชื่อ [title]
- ด้านบน
ตัวพิมพ์ใหญ่
string string.capitalize()แสดงผลสําเนาสตริงโดยให้อักขระแรก (หากมี) เป็นตัวพิมพ์ใหญ่ ส่วนที่เหลือเป็นตัวพิมพ์เล็ก วิธีนี้ไม่สนับสนุนอักขระที่ไม่ใช่ ASCII
จำนวน
int string.count(sub, start=0, end=None)แสดงจํานวนครั้งที่สตริงย่อย
sub
ปรากฏ (ไม่ซ้อนทับกัน) ในสตริง โดยสามารถเลือกจํากัดให้อยู่ในช่วง [start:end]
โดยที่ start
จะรวมและ end
จะยกเว้น
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
sub
|
ต้องระบุ ส่วนย่อยของสตริงที่จะนับ |
start
|
int หรือ None
ค่าเริ่มต้นคือ 0 จำกัดเฉพาะการค้นหาจากตำแหน่งนี้ |
end
|
int หรือ None
ค่าเริ่มต้นคือ None ตำแหน่งที่ไม่บังคับซึ่งจะแสดงก่อนเพื่อจำกัดการค้นหา |
elems
sequence string.elems()แสดงผลค่าที่ซ้ำกันได้ซึ่งประกอบด้วยสตริงย่อยที่มีองค์ประกอบ 1 องค์ประกอบต่อเนื่องกันของสตริง เทียบเท่ากับ
[s[i] for i in range(len(s))]
ยกเว้นว่าค่าที่แสดงผลอาจไม่ใช่รายการ
endswith
bool string.endswith(sub, start=0, end=None)แสดงผลเป็น "จริง" หากสตริงลงท้ายด้วย
sub
หากเป็น "เท็จ" หรือจะระบุเป็น "เท็จ" (ไม่บังคับ) โดยจำกัดไว้เฉพาะ [start:end]
, start
จะรวมอยู่ และ end
เป็น "เฉพาะตัว"
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
sub
|
สตริง หรือชุดสตริง
ต้องระบุ ส่วนต่อท้าย (หรือชุดของส่วนต่อท้ายทางเลือก) ที่จะจับคู่ |
start
|
int หรือ None
ค่าเริ่มต้นคือ 0 ทดสอบโดยเริ่มต้นที่ตำแหน่งนี้ |
end
|
int หรือ None
ค่าเริ่มต้นคือ None ตําแหน่งที่จะหยุดการเปรียบเทียบ (ไม่บังคับ) |
ค้นหา
int string.find(sub, start=0, end=None)แสดงผลดัชนีแรกที่พบ
sub
หรือ -1 หากไม่มีดัชนีดังกล่าว โดยสามารถเลือกจำกัดให้แสดงเฉพาะ [start:end]
, start
แบบรวม และ end
แบบไม่รวม
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
sub
|
ต้องระบุ สตริงย่อยที่จะค้นหา |
start
|
int หรือ None
ค่าเริ่มต้นคือ 0 จำกัดให้ค้นหาจากตำแหน่งนี้ |
end
|
int หรือ None
ค่าเริ่มต้นคือ None ตําแหน่งที่ไม่บังคับก่อนการจํากัดการค้นหา |
รูปแบบ
string string.format(*args, **kwargs)ทำการแทรกสตริง สตริงรูปแบบมีช่องการแทนที่โดยล้อมรอบด้วยวงเล็บปีกกา
{}
ทุกอย่างที่ไม่ได้อยู่ในวงเล็บปีกกาจะถือว่าเป็นข้อความตัวอักษรล้วน ซึ่งระบบจะคัดลอกไปยังเอาต์พุตโดยไม่มีการแก้ไข หากต้องการใส่อักขระวงเล็บปีกกาในข้อความตัวอักษรล้วน ให้กำหนดเป็นอักขระหลีกโดยใส่ {{
และ }}
ซ้ำกัน ฟิลด์การแทนที่อาจเป็นชื่อ ตัวเลข หรือว่างก็ได้ ระบบจะแปลงค่าเป็นสตริงโดยใช้ฟังก์ชัน 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
|
ค่าเริ่มต้นคือ () ลิสต์อาร์กิวเมนต์ |
kwargs
|
ค่าเริ่มต้นคือ {} พจนานุกรมของอาร์กิวเมนต์ |
ดัชนี
int string.index(sub, start=0, end=None)แสดงผลดัชนีแรกที่พบ
sub
หรือแสดงข้อผิดพลาดหากไม่มีดัชนีดังกล่าว โดยสามารถเลือกจำกัดให้ [start:end]
start
รวมและ end
ยกเว้นได้
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
sub
|
ต้องระบุ สตริงย่อยที่จะค้นหา |
start
|
int หรือ None
ค่าเริ่มต้นคือ 0 จำกัดให้ค้นหาจากตำแหน่งนี้ |
end
|
int หรือ None
ค่าเริ่มต้นคือ None ตําแหน่งที่ไม่บังคับก่อนการจํากัดการค้นหา |
Isalnum
bool string.isalnum()แสดงค่า "จริง" หากอักขระทั้งหมดในสตริงเป็นตัวอักษรและตัวเลขคละกัน ([a-zA-Z0-9]) และมีอักขระอย่างน้อย 1 ตัว
Isalpha
bool string.isalpha()แสดงค่า True หากอักขระทั้งหมดในสตริงเป็นตัวอักษร ([a-zA-Z]) และมีอักขระอย่างน้อย 1 ตัว
isdigit
bool string.isdigit()แสดงค่า "จริง" หากอักขระทั้งหมดในสตริงเป็นตัวเลข ([0-9]) และมีอักขระอย่างน้อย 1 ตัว
ต่ำกว่า
bool string.islower()แสดงค่า "จริง" หากอักขระที่มีตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ทั้งหมดในสตริงเป็นตัวพิมพ์เล็กและมีอักขระอย่างน้อย 1 ตัว
Isspace
bool string.isspace()แสดงค่า "จริง" หากอักขระทั้งหมดเป็นอักขระช่องว่างและสตริงมีอักขระอย่างน้อย 1 ตัว
ชื่อ
bool string.istitle()แสดงค่า True หากสตริงเป็นตัวพิมพ์ใหญ่ทั้งหมดและมีอักขระอย่างน้อย 1 ตัว ซึ่งหมายความว่าอักขระตัวพิมพ์ใหญ่ทุกตัวต้องตามหลังอักขระที่ไม่มีตัวพิมพ์ (เช่น เว้นวรรค) และอักขระตัวพิมพ์เล็กทุกตัวต้องตามหลังอักขระที่มีตัวพิมพ์ (เช่น ตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็ก)
isupper
bool string.isupper()แสดงค่า "จริง" หากอักขระที่มีตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ทั้งหมดในสตริงเป็นตัวพิมพ์ใหญ่และมีอักขระอย่างน้อย 1 ตัว
ผนวก
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 หรือ None
ค่าเริ่มต้นคือ None อักขระที่จะนำออก หรือช่องว่างทั้งหมดหากไม่มี |
พาร์ติชัน
tuple string.partition(sep)แยกสตริงอินพุตที่ตำแหน่งแรกที่พบตัวคั่น
sep
และแสดงผลพาร์ติชันที่ได้เป็นทูเปิล 3 องค์ประกอบในรูปแบบ (ก่อน ตัวคั่น หลัง) หากสตริงอินพุตไม่มีตัวคั่น พาร์ติชันจะแสดงผลเป็น (self, '', '')
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
sep
|
ต้องระบุ สตริงที่จะแบ่ง |
removeprefix
string string.removeprefix(prefix)หากสตริงขึ้นต้นด้วย
prefix
ระบบจะแสดงสตริงใหม่โดยนำคำนำหน้าออก ไม่เช่นนั้น ระบบจะแสดงผลสตริง
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
prefix
|
ต้องระบุ คำนำหน้าที่จะนำออก หากมี |
removesuffix
string string.removesuffix(suffix)หากสตริงลงท้ายด้วย
suffix
จะแสดงผลสตริงใหม่ที่มีการนำส่วนต่อท้ายออก ไม่เช่นนั้น ระบบจะแสดงผลสตริง
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
suffix
|
ต้องระบุ ส่วนต่อท้ายที่จะนำออก หากมี |
แทนที่
string string.replace(old, new, count=-1)แสดงผลสําเนาของสตริงที่มีการแทนที่
old
ด้วย new
โดยอาจจํากัดจํานวนการแทนที่ไว้ที่ count
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
old
|
ต้องระบุ สตริงที่จะถูกแทนที่ |
new
|
ต้องระบุ สตริงที่จะแทนที่ |
count
|
ค่าเริ่มต้นคือ -1 จำนวนสูงสุดของการแทนที่ หากละเว้นหรือค่าเป็นลบ จะไม่มีขีดจำกัด |
rfind
int string.rfind(sub, start=0, end=None)แสดงผลอินเด็กซ์สุดท้ายที่พบ
sub
หรือ -1 หากไม่มีอินเด็กซ์ดังกล่าว โดยสามารถเลือกจำกัดให้แสดงผลเฉพาะ [start:end]
, start
แบบรวม และ end
แบบไม่รวม
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
sub
|
ต้องระบุ สตริงย่อยที่จะค้นหา |
start
|
int หรือ None
ค่าเริ่มต้นคือ 0 จำกัดเฉพาะการค้นหาจากตำแหน่งนี้ |
end
|
int หรือ None
ค่าเริ่มต้นคือ None ตำแหน่งที่ไม่บังคับซึ่งจะแสดงก่อนเพื่อจำกัดการค้นหา |
Rindex
int string.rindex(sub, start=0, end=None)แสดงผลดัชนีล่าสุดที่พบ
sub
หรือเพิ่มข้อผิดพลาดหากไม่มีดัชนีดังกล่าว จำกัด [start:end]
, start
ที่รวมอยู่ และ end
รวม (ไม่บังคับ)
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
sub
|
ต้องระบุ สตริงย่อยที่จะค้นหา |
start
|
int หรือ None
ค่าเริ่มต้นคือ 0 จำกัดเฉพาะการค้นหาจากตำแหน่งนี้ |
end
|
int หรือ None
ค่าเริ่มต้นคือ None ตำแหน่งที่ไม่บังคับซึ่งจะแสดงก่อนเพื่อจำกัดการค้นหา |
rpartition
tuple string.rpartition(sep)แยกสตริงอินพุตที่ตำแหน่งที่พบตัวคั่น
sep
ครั้งล่าสุด และแสดงผลพาร์ติชันที่ได้เป็นทูเปิล 3 องค์ประกอบในรูปแบบ (ก่อน ตัวคั่น หลัง) หากสตริงอินพุตไม่มีตัวคั่น rpartition จะแสดงผล ('', '', self)
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
sep
|
ต้องระบุ สตริงที่จะแบ่ง |
rsplit
list string.rsplit(sep, maxsplit=None)แสดงรายการคำทั้งหมดในสตริงโดยใช้
sep
เป็นตัวคั่น โดยเลือกจำกัดจำนวนการแยกเป็น maxsplit
วิธีนี้มีลักษณะเหมือนSplit() ยกเว้นการแยกไปทางขวา
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
sep
|
required สตริงที่จะแบ่ง |
maxsplit
|
int หรือ None
ค่าเริ่มต้นคือ None จำนวนการแยกสูงสุด |
rstrip
string string.rstrip(chars=None)แสดงผลสําเนาของสตริงที่ลบอักขระต่อท้ายที่ปรากฏใน
chars
ออก โปรดทราบว่า chars
ไม่ใช่ส่วนต่อท้าย: ชุดค่าผสมของค่าทั้งหมดจะถูกลบออก:"abcbaa".rstrip("ab") == "abc"
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
chars
|
สตริง หรือ None
ค่าเริ่มต้นคือ None อักขระที่จะนำออก หรือเว้นวรรคทั้งหมดหากไม่มี |
สปลิต
list string.split(sep, maxsplit=None)แสดงผลรายการของคำทั้งหมดในสตริง โดยใช้
sep
เป็นตัวคั่น (ไม่บังคับ) โดยจำกัดจำนวนของการแยกไว้ที่ maxsplit
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
sep
|
ต้องระบุ สตริงที่จะแบ่ง |
maxsplit
|
int หรือ None
ค่าเริ่มต้นคือ None จำนวนการแยกสูงสุด |
เส้นแบ่ง
sequence string.splitlines(keepends=False)แยกสตริงที่ขอบเขตบรรทัด ('\n', '\r\n', '\r') และแสดงผลลัพธ์เป็นลิสต์ใหม่แบบปรับเปลี่ยนได้
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
keepends
|
ค่าเริ่มต้นคือ False ควรรวมการแบ่งบรรทัดไว้ในรายการผลลัพธ์หรือไม่ |
startswith
bool string.startswith(sub, start=0, end=None)แสดงผลเป็น "จริง" หากสตริงขึ้นต้นด้วย
sub
มิเช่นนั้นแสดงผลเป็น "เท็จ" โดยสามารถเลือกจำกัดให้ใช้เฉพาะ [start:end]
, start
แบบรวม และ end
แบบไม่รวมได้
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
sub
|
string หรือ tuple ของ strings; required คำนำหน้า (หรือ tuple ของคำนำหน้าทางเลือก) ที่จะจับคู่ |
start
|
int หรือ None
ค่าเริ่มต้นคือ 0 การทดสอบเริ่มต้นที่ตําแหน่งนี้ |
end
|
int หรือ None
ค่าเริ่มต้นคือ None หยุดการเปรียบเทียบที่ตําแหน่งนี้ |
แถบ
string string.strip(chars=None)แสดงผลสําเนาของสตริงที่นําอักขระนำหน้าหรืออักขระต่อท้ายที่ปรากฏใน
chars
ออก โปรดทราบว่า chars
ไม่ใช่ทั้งคำนำหน้าหรือคำต่อท้าย ระบบจะนำชุดค่าผสมทั้งหมดของค่านี้ออก"aabcbcbaa".strip("ab") == "cbc"
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
chars
|
string หรือ None
ค่าเริ่มต้นคือ None อักขระที่จะนำออก หรือช่องว่างทั้งหมดหากไม่มี |
title
string string.title()แปลงสตริงอินพุตเป็น Title Case กล่าวคือ ทุกคำขึ้นต้นด้วยอักษรตัวพิมพ์ใหญ่ ส่วนอักษรที่เหลือเป็นตัวพิมพ์เล็ก ในบริบทนี้ คำหมายถึงชุดตัวอักษรตามลำดับโดยเฉพาะ วิธีนี้ไม่รองรับอักขระ Unicode เสริม
ส่วนบน
string string.upper()แสดงผลสตริงนี้ในเวอร์ชันตัวพิมพ์ใหญ่