Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

วิธีการสตริงหลาม ?


Python มีเมธอดในตัวมากมายที่เราใช้กับสตริงได้

ด้านล่างนี้คือรายการวิธีสตริงที่มีใน Python 3

วิธีการ
คำอธิบาย
ตัวอย่าง
ตัวพิมพ์ใหญ่()
ส่งคืนสำเนาของสตริงโดยใช้อักขระตัวแรกเป็นตัวพิมพ์ใหญ่และส่วนที่เหลือเป็นตัวพิมพ์เล็ก
>>> mystring ="สวัสดี python">>> print(mystring.capitalize())สวัสดี python
Casefold()
ส่งคืนสำเนาสตริงที่พับกรณี สตริงแบบ casefolded อาจใช้สำหรับการจับคู่แบบไม่มีเคส
>>> mystring ="สวัสดี PYTHON">>> พิมพ์ (mystring.casefold()) สวัสดี python
Center(width, [fillchar])
ส่งคืนสตริงที่กึ่งกลางในสตริงที่มีความยาว ความกว้าง . การเติมสามารถทำได้โดยใช้ fillchar . ที่ระบุ (ช่องว่างภายในเริ่มต้นใช้ช่องว่าง ASCII) สตริงเดิมจะถูกส่งกลับถ้า ความกว้าง น้อยกว่าหรือเท่ากับเลน
>>> mystring ="สวัสดี">>> x =mystring.center(12,"-")>>> print(x)---สวัสดี----
นับ (ย่อย [เริ่ม] [สิ้นสุด])
คืนค่าจำนวนสตริงย่อยที่ไม่ทับซ้อนกัน (sub ) ในช่วง [เริ่มต้น , จบ ]. อาร์กิวเมนต์ตัวเลือก เริ่มต้น และ จบ ถูกตีความว่าเป็นสัญกรณ์สไลซ์
>>> mystr ="สวัสดี Python">>> print(mystr.count("o"))2>>>> print(mystr.count("th"))1>>>> print( mystr.count("l"))2>>>> print(mystr.count("h"))1>>> print(mystr.count("H"))1>>>> พิมพ์ (mystr.count(" hH"))0
เข้ารหัส(encoding =“utf-g”, ข้อผิดพลาด =“เข้มงวด”)
ส่งคืนเวอร์ชันที่เข้ารหัสของสตริงเป็นอ็อบเจ็กต์ไบต์ การเข้ารหัสเริ่มต้นคือ utf-8 อาจมีข้อผิดพลาดเพื่อกำหนดรูปแบบการจัดการข้อผิดพลาดที่แตกต่างกัน ค่าที่เป็นไปได้สำหรับข้อผิดพลาดคือ:
  • เข้มงวด (ข้อผิดพลาดในการเข้ารหัสทำให้เกิด UnicodeError)

  • ละเลย

  • แทนที่

  • xmlcharrefreplace

  • แบ็กสแลชแทนที่

  • ชื่ออื่นที่ลงทะเบียนผ่าน codecs.register_error()


>>> mystr ='python!'>>> print('The string is:',mystr)สตริงคือ:python!>>> print('The encodedversion is:',mystr.encode ("ascii","ignore"))เวอร์ชันที่เข้ารหัสคือ:b'python!'>>> print('เวอร์ชันที่เข้ารหัส (พร้อมการแทนที่) คือ:',mystr.encode("ascii","replace")) รุ่นที่เข้ารหัส (withreplace) คือ:b'python!'
ลงท้ายด้วย(คำต่อท้าย [เริ่ม], [สิ้นสุด])
คืนค่า True หากสตริงลงท้ายด้วยคำต่อท้ายที่ระบุ มิฉะนั้นจะคืนค่า False
>>> mystr ="Python">>>print(mystr.endswith("y"))False>>>print(mystr.endswith("hon"))True
Expandtabs(tabsize=8)
ส่งคืนสำเนาของสตริงที่อักขระแท็บทั้งหมดถูกแทนที่ด้วยช่องว่างอย่างน้อยหนึ่งช่อง ขึ้นอยู่กับคอลัมน์ปัจจุบันและขนาดแท็บที่กำหนด
>>> mystr ="1\t2\t3">>> print(mystr)1 2 3>>>print(mystr.expandtabs())1 2 3>>>พิมพ์ (mystr.expandtabs (tabsize=15))1 23>>>print(mystr.expandtabs(tabsize=2))1 2 3
Find(sub, [start], [end])
ส่งคืนดัชนีต่ำสุดในสตริงที่สตริงย่อย sub พบได้ในสไลซ์ s[start:end]
>>> mystring ="Python">>>print(mystring.find("P"))0>>>print(mystring.find("on"))4
รูปแบบ(*args, **kwargs)
ดำเนินการจัดรูปแบบสตริง สตริงที่เรียกวิธีนี้สามารถมีข้อความตามตัวอักษรหรือฟิลด์แทนที่คั่นด้วยเครื่องหมายวงเล็บปีกกา {}
>>> print("{} and{}".format("Apple","Banana"))Apple and Banana>>> print("{1} และ{0}".format( "Apple","Banana"))Banana and Apple>>> print("{lunch} and{dinner}".format(lunch="Peas", dinner="Beans"))Peas and Beans
format_map(การจับคู่)
คล้ายกับการจัดรูปแบบ (**การแมป) ยกเว้นว่ามีการใช้การแมปโดยตรงและไม่ได้คัดลอกไปยังพจนานุกรม
>>> lunch ={"Food":"Pizza", "Drink":"Wine"}>>> print("Lunch:{Food},{Drink}".format_map(lunch)) อาหารกลางวัน:พิซซ่า ไวน์>>>> คลาส Default(dict):def __missing__(self,key):return key>>>> lunch ={"Drink":"Wine"}>>> print("Lunch:{Food}, {Drink}".format_map(Default(lunch)))อาหารกลางวัน:อาหาร ไวน์
ดัชนี(ย่อย [เริ่ม] [สิ้นสุด])
ค้นหาค่าที่ระบุในสตริงและส่งกลับตำแหน่งที่พบ
>>> mystr ="HelloPython">>> print(mystr.index("P"))5>>>print(mystr.index("hon"))8>>>> print(mystr) .index("o"))4
isalnum
คืนค่า True หากอักขระทั้งหมดในสตริงเป็นตัวอักษรและตัวเลข
>>> mystr ="HelloPython">>> print(mystr.isalnum())True>>> a ="123">>> พิมพ์ (a.isalnum())True>>>> a ="$*%!!!">>> print(a.isalnum())False
Isalpha()
คืนค่า True หากอักขระทั้งหมดในสตริงเป็นตัวอักษร
>>> mystr ="HelloPython">>> print(mystr.isalpha())True>>> a ="123">>> พิมพ์ (a.isalpha())False>>> a ="$*%!!!">>> print(a.isalpha())False
Isdecimal()
คืนค่า True หากอักขระทั้งหมดในสตริงเป็นทศนิยม
>>> mystr ="HelloPython">>> print(mystr.isdecimal())False>>> a="1.23">>> พิมพ์ (a.isdecimal())False>>> c =u"\u00B2">>> print(c.isdecimal())False>>> c="133">>>> print(c.isdecimal())True
Isdigit()
คืนค่า True หากอักขระทั้งหมดในสตริงเป็นตัวเลข
>>> c="133">>> print(c.isdigit())True>>> c =u"\u00B2">>> print(c.isdigit())True>>> a="1.23">>> print(a.isdigit())False
ตัวระบุ()
คืนค่า True หากสตริงเป็นตัวระบุ
>>> c="133">>> print(c.isidentifier())False>>> c="_user_123">>> print(c.isidentifier())True>>>> c ="Python">>> พิมพ์ (c.isidentifier()) จริง
Islower()
คืนค่า True หากอักขระทั้งหมดในสตริงเป็นตัวพิมพ์เล็ก
>>> c="Python">>> print(c.islower())False>>> c="_user_123">>> print(c.islower())True>>> พิมพ์ (c.islower())เท็จ
Isnumeric()
คืนค่า True หากอักขระทั้งหมดในสตริงเป็นตัวเลข
>>> c="133">>> print(c.isnumeric())True>>> c="_user_123">>> print(c.isnumeric())False>>> c ="Python">>> print(c.isnumeric())False
isprintable()
คืนค่า True ถ้าอักขระทั้งหมดในสตริงสามารถพิมพ์ได้
>>> c="133">>> print(c.isprintable())True>>> c="_user_123">>> print(c.isprintable())True>>> c ="\t">>> print(c.isprintable())False
isspace()
คืนค่า True หากอักขระทั้งหมดในสตริงเป็นช่องว่าง
>>> c="133">>> print(c.isspace())False>>> c="Hello Python">>> print(c.isspace())False73>>> c="สวัสดี">>>> พิมพ์ (c.isspace())False>>> c="\t">>> พิมพ์ (c.isspace()) จริง
istitle()
คืนค่า True หากสตริงเป็นไปตามกฎของชื่อ
>>> c="133">>> print(c.istitle())False>>> c="Python">>> print(c.istitle())True>>> c ="\t">>> print(c.istitle())False
isupper()
คืนค่า True หากอักขระทั้งหมดในสตริงเป็นตัวพิมพ์ใหญ่
>>> c="Python">>> print(c.isupper())False>>> c="PYHTON">>> พิมพ์(c.isupper())True>>> c ="\t">>> print(c.isupper())False
เข้าร่วม(iterable)
รวมองค์ประกอบของ iterable ที่ส่วนท้ายของสตริง
>>> a ="-">>> print(a.join("123"))1-2-3>>> a="Hello Python">>> a="** ">>> พิมพ์(a.join("HelloPython"))H**e**l**l**o****P**y**t**h**o**n 
ljust( ความกว้าง [, fillchar ])
ส่งคืนสตริงเวอร์ชันที่จัดชิดขอบซ้าย
>>> a="สวัสดี">>> b =a.ljust(12, "_")>>> พิมพ์ (b) สวัสดี_______
lower()
แปลงสตริงเป็นตัวพิมพ์เล็ก
>>> a ="Python">>> print(a.lower())Python
lstrip([ อักขระ ])
ส่งคืนสตริงเวอร์ชันตัดแต่งด้านซ้าย
>>> a =" สวัสดี ">>> print(a.lstrip(), "!")สวัสดี
maketrans( x [, [, z ]])
ส่งคืนตารางการแปลเพื่อใช้ในการแปล
>>> frm ="SecretCode">>> ถึง ="4203040540">>> trans_table =str.maketrans(frm,to)>>>> sec_code ="SecretCode".translate(trans_table)>>> พิมพ์ (sec_code)400304 0540
พาร์ติชั่น( กันยายน )
ส่งคืน tuple โดยที่สตริงถูกแบ่งออกเป็นสามส่วน
>>> mystr ="Hello-Python">>> print(mystr.partition("-"))('Hello', '-', 'Python')74>>>>print(mystr) .partition("."))('Hello-Python', '', '')
แทนที่( แก่ , ใหม่ [, นับ ])
ส่งคืนสตริงโดยแทนที่ค่าที่ระบุด้วยค่าที่ระบุ
>>> mystr ="สวัสดี Python สวัสดี Java สวัสดี C++">>>print(mystr.replace("Hello","Bye"))ลาก่อน Python ลาก่อน จาวา ByeC++.>>>print(mystr.replace("Hello","Hell", 2))Hell Python นรก Java.Hello C++.
rfind( ย่อย [, เริ่มต้น [, จบ ]])
ค้นหาค่าที่ระบุในสตริงและส่งกลับตำแหน่งสุดท้ายของตำแหน่งที่พบ
>>> mystr ="Hello-Python">>> print(mystr.rfind("P"))6>>>> print(mystr.rfind("-"))5>>>> พิมพ์ (mystr.rfind("z"))-1
rindex( ย่อย [, เริ่มต้น [, จบ ]])
ค้นหาค่าที่ระบุในสตริงและส่งกลับตำแหน่งสุดท้ายของตำแหน่งที่พบ
>>> mystr ="Hello-Python">>> print(mystr.rindex("P"))6>>>> print(mystr.rindex("-"))5>>>> พิมพ์ (mystr.rindex("z"))Traceback (การเรียกล่าสุด):ไฟล์ "", line1, ใน print(mystr.rindex("z"))ValueError:ไม่พบสตริงย่อย
rjust( ความกว้าง [, fillchar ])
ส่งคืนสตริงที่ถูกต้องในสตริงที่มีความยาว ความกว้าง .
>>> mystr ="สวัสดี Python">>> mystr1 =mystr.rjust(20,"-")>>> พิมพ์ (mystr1) -------- สวัสดี Python
rpartition( กันยายน )
ส่งคืน tuple โดยที่สตริงถูกแบ่งออกเป็นสามส่วน
>>> mystr ="สวัสดี Python">>>print(mystr.rpartition("."))('', '', 'Hello Python')>>> print(mystr.rpartition( ""))('สวัสดี', ' ', 'Python')
rsplit(sep=None, maxsplit=-1)
แยกสตริงที่ตัวคั่นที่ระบุ และส่งคืนรายการ
>>> mystr ="สวัสดี Python">>> print(mystr.rsplit())['Hello', 'Python']>>> mystr ="Hello-Python-Hello">>> print(mystr.rsplit(sep="-",maxsplit=1))['Hello-Python', 'Hello']
แถบเลื่อน([ อักขระ ])
ส่งคืนเวอร์ชันตัดแต่งด้านขวาของสตริง
>>> mystr ="สวัสดี Python">>> print(mystr.rstrip(),"!")สวัสดี Python !>>> mystr ="----------- -สวัสดี Python -----">>> พิมพ์ (mystr.rstrip(), "-") ------------ สวัสดี Python------ ----- ->>> print(mystr.rstrip(),"_") ------------ สวัสดี Python----------- _
split(sep=None, maxsplit=-1)
แยกสตริงที่ตัวคั่นที่ระบุ และส่งคืนรายการ
>>> mystr ="สวัสดี Python">>> print(mystr.split())['Hello', 'Python']>>> mystr1="Hello,,Python">>> พิมพ์ (mystr1.split(","))['สวัสดี', '', 'Python']
splitlines([keepends])
แยกสตริงที่ตัวแบ่งบรรทัดและส่งคืนรายการ
>>> mystr ="สวัสดี:\n\nPython\r\nJava\nC++\n">>>print(mystr.splitlines())['สวัสดี:', '', ' Python' ,'Java', 'C++']>>>print(mystr.splitlines(keepends=True))['Hello:\n', '\n', 'Python\r\n', 'Java\n', 'C++\n']
startswith( คำนำหน้า [, เริ่มต้น [, จบ ]])
คืนค่า จริง หากสตริงเริ่มต้นด้วยค่าที่ระบุ
>>> mystr ="สวัสดี Python">>>print(mystr.startswith("P"))False>>>print(mystr.startswith("H"))True>>>print( mystr.startswith("Hell"))จริง
แถบ ([ อักขระ ])
ส่งคืนสตริงที่ตัดแต่งแล้ว
>>> mystr ="สวัสดี Python">>> print(mystr.strip(),"!")สวัสดี Python !>>> print(mystr.strip(), "")สวัสดี Python
swapcase()
สลับตัวพิมพ์เล็ก ตัวพิมพ์เล็กจะกลายเป็นตัวพิมพ์ใหญ่และกลับกัน
>>> mystr ="สวัสดี PYthon">>> print(mystr.swapcase())hELLO python
title()
แปลงอักขระตัวแรกของแต่ละคำเป็นตัวพิมพ์ใหญ่
>>> mystr ="สวัสดี PYthon">>> print(mystr.title())สวัสดี Python>>> mystr ="HELLO JAVA">>> พิมพ์ (mystr.title ()) สวัสดี Java 
แปล( ตาราง )
ส่งคืนสตริงที่แปลแล้ว
>>> frm ="helloPython">>> ถึง ="40250666333">>> trans_table =str.maketrans(frm, to)>>> secret_code ="SecretCode".translate(trans_table)>>> พิมพ์ (secret_code)S0cr06 C3d0
upper()
แปลงสตริงเป็นตัวพิมพ์ใหญ่
>>> mystr ="สวัสดี Python">>> print(mystr.upper())HELLO PYTHON
zfill( ความกว้าง )
เติมสตริงด้วยค่า 0 ที่ระบุในตอนต้น
>>> mystr ="999">>> print(mystr.zfill(9))000000999>>> mystr ="-40">>> พิมพ์ (mystr.zfill(5))-0040