หน้าแรก
หน้าแรก
คลาสสตริงมีวิธีการแทนที่ที่สามารถใช้เพื่อแทนที่สตริงย่อยในสตริง เราสามารถใช้วิธีนี้เพื่อแทนที่อักขระที่เราต้องการลบด้วยสตริงว่าง ตัวอย่างเช่น: >>> "Hello people".replace("e", "") "Hllo popl" หากคุณต้องการลบอักขระหลายตัวออกจากสตริงในบรรทัดเดียว ควรใช้
วิธีที่ง่ายที่สุดคือการใช้เมธอด str.split เพื่อแยกทุกครั้งที่เกิด , และแมปทุกสตริงกับวิธีสตริปเพื่อลบช่องว่างนำหน้า/ต่อท้าย ตัวอย่างเช่น >>> s = "1, John Doe, Boston, USA" >>> print map(str.strip, s.split(',')) ['1', 'John Doe', 'Boston', &
คุณสามารถค้นหาการเกิดขึ้นที่ n ของสตริงย่อยในสตริงโดยแยกที่สตริงย่อยด้วยการแยก n+1 สูงสุด หากรายการผลลัพธ์มีขนาดใหญ่กว่า n+1 แสดงว่าสตริงย่อยเกิดขึ้นมากกว่า n ครั้ง ดัชนีสามารถพบได้โดยสูตรง่ายๆ ความยาวของสตริงเดิม - ความยาวของส่วนที่แยกล่าสุด - ความยาวของสตริงย่อย ตัวอย่าง def findnth(string, substr
คุณสามารถใช้ฟังก์ชัน eval เพื่อประเมินนิพจน์ทางคณิตศาสตร์ในสตริงได้ ตัวอย่าง ตัวอย่างเช่น หากคุณมีสตริงที่มีเนื้อหา (4*5) + 21 คุณสามารถประเมินและได้ผลลัพธ์ >>> s = "(4*5) + 22" >>> eval(s) 42 Eval ปฏิบัติตามกฎของ Python ในการประเมินนิพจน์ทางคณิตศาสตร์สำหรับกรณีที่ไม่ได
ตัวระบุ %s แปลงวัตถุโดยใช้ str() และ %r แปลงโดยใช้ repr() สำหรับบางอ็อบเจกต์ เช่น จำนวนเต็ม พวกมันให้ผลลัพธ์เหมือนกัน แต่ repr() นั้นพิเศษตรงที่ (สำหรับประเภทที่เป็นไปได้) จะส่งกลับผลลัพธ์ที่เป็นไวยกรณ์ Python ที่ถูกต้องตามอัตภาพ ซึ่งอาจใช้เพื่อสร้างอ็อบเจกต์ขึ้นมาใหม่ได้อย่างชัดเจน เป็นตัวแทน ตัวอ
คุณสามารถใช้ str.join(list_of_strings) จากคลาสสตริงได้ สตริงที่คุณเรียกใช้ใช้เพื่อรวมรายการสตริงที่คุณระบุเป็นอาร์กิวเมนต์ ตัวอย่าง >>> ' '.join(['Hello', 'World']) 'Hello World' >>> ''.join(['Hello', 'World', 'People'
เราต้องการตรวจสอบว่าสตริงที่เรามีประกอบด้วยการซ้ำซ้อนของสตริงย่อยของสตริงนี้เท่านั้นหรือไม่ เพื่อตรวจสอบว่าเราสามารถตรวจสอบว่ามีการหมุนของสตริงในชุดค่าผสมของ 2 สตริงหรือไม่ นี่เป็นเพราะว่าสตริงเป็นแบบคาบก็ต่อเมื่อมีค่าเท่ากับการหมุนตัวมันเองที่ไม่สำคัญ ตัวอย่าง รหัสต่อไปนี้ตรวจสอบสิ่งนี้และส่งคืนตา
ในการแปลงสตริง JSON เป็นพจนานุกรมโดยใช้ json.loads() เมธอดนี้ยอมรับสตริง json ที่ถูกต้องและส่งคืนพจนานุกรมที่คุณสามารถเข้าถึงองค์ประกอบทั้งหมดได้ ตัวอย่างเช่น >>> import json >>> s = '{"success": "true", "status": 200, "message": "He
หากคุณต้องการลบสตริงย่อยออกจากส่วนท้ายของสตริง คุณควรตรวจสอบก่อนว่าสตริงนั้นลงท้ายด้วยสตริงย่อยนั้นหรือไม่ ถ้าเป็นเช่นนั้น ให้สไลซ์สตริงโดยเก็บเฉพาะส่วนที่ไม่มีสตริงย่อย ตัวอย่างเช่น def rchop(string, ending): if string.endswith(ending): return string[:-len(ending)] retur
เราสามารถใช้วิธี splitlines() ในคลาสสตริงเพื่อให้บรรลุเป้าหมายนี้ ตัวอย่าง >>> """some multi line string""".splitlines() ['some', 'multi line', 'string'] นอกจากนี้เรายังสามารถระบุตัวคั่น \n ในวิธี split() ได้ดังนี้ - >>> "
หากคุณมีสตริงเช่น: "Name1=Value1;Name2=Value2;Name3=Value3" และคุณต้องการแปลงเป็นพจนานุกรม มันค่อนข้างง่าย คุณสามารถแยกบน ; จากนั้นบน = และส่งผ่านสิ่งนี้ไปยังตัวสร้าง dict ตัวอย่าง >>> s = "Name1=Value1;Name2=Value2;Name3=Value3" >>> dict(item.split("=&qu
การแสดงที่ดีที่สุดสำหรับพจนานุกรมหลามในสตริงคือ JSON คุณสามารถใช้ json.dumps(dict) เพื่อแปลงพจนานุกรมเป็นสตริง และคุณสามารถใช้ json.loads(string) เพื่อดึงพจนานุกรมกลับจากสตริงได้ ตัวอย่าง ตัวอย่างเช่น เราจัดลำดับพจนานุกรมให้ดังนี้ >>> import json >>> d = {'id': 15, 'na
ในการแปลงสตริงในรายการคำ คุณเพียงแค่แยกสตริงออกจากช่องว่าง คุณสามารถใช้ split() จากคลาสสตริง ตัวคั่นเริ่มต้นสำหรับวิธีนี้คือช่องว่าง เช่น เมื่อเรียกใช้สตริง มันจะแยกสตริงนั้นที่อักขระช่องว่าง ตัวอย่าง >>> "Please split this string".split() ['Please', 'split', '
หากคุณต้องการใช้อักษรตัวแรกของคำแรกของสตริงเป็นตัวพิมพ์ใหญ่ คุณสามารถใช้วิธีการพิมพ์ตัวพิมพ์ใหญ่จากคลาสสตริงได้ ตัวอย่าง >>> s = "my name" >>> s.capitalize() 'My name' คุณสามารถทำสิ่งนี้ได้ด้วยตนเองโดยการตัดสตริง ตัวอย่าง >>> s = "my name" >
สตริงคือลำดับของอักขระ สิ่งเหล่านี้เป็นแนวคิดที่เป็นนามธรรม และไม่สามารถจัดเก็บบนดิสก์ได้โดยตรง สตริงไบต์คือลำดับของไบต์ - สิ่งที่สามารถเก็บไว้ในดิสก์ได้ การจับคู่ระหว่างทั้งสองเป็นการเข้ารหัส - มีหลายสิ่งเหล่านี้ (และเป็นไปได้อย่างไม่สิ้นสุด) - และคุณจำเป็นต้องรู้ว่าข้อใดใช้ในกรณีเฉพาะเพื่อทำการแปล
ในการจัดเรียงตัวอักษรในสตริงตามตัวอักษร คุณต้องใช้ฟังก์ชัน sorted ซึ่งส่งคืนรายการตัวอักษรที่จัดเรียงแล้ว ซึ่งคุณสามารถเข้าร่วมเพื่อรับสตริงได้ ตัวอย่างเช่น >>> s = "helloworld" >>> ''.join(sorted(s)) 'dehllloorw' หากคุณต้องการจัดเรียงเฉพาะอักขระที่ไม่ซ้ำ
คุณสามารถใช้พจนานุกรมเพื่อสอดแทรกสตริง พวกเขามีไวยากรณ์ที่คุณต้องระบุคีย์ในวงเล็บระหว่าง % และอักขระการแปลง ตัวอย่างเช่น หากคุณมี float ที่เก็บไว้ในคีย์ cost และต้องการจัดรูปแบบเป็น $xxxx.xx คุณจะต้องวาง $%(cost).2f ในตำแหน่งที่คุณต้องการแสดง . ต่อไปนี้คือตัวอย่างการใช้การจัดรูปแบบสตริงในพจนานุกรมเ
หากคุณต้องการให้สตริงซ้ำกับอักขระ n ตัว ขั้นแรกให้ทำซ้ำทั้งสตริงเป็น n/len(s) ครั้ง และเพิ่มอักขระ n%len(s) ในตอนท้าย ตัวอย่างเช่น def repeat_n(string, n): l = len(s) full_rep = n/l # Construct string with full repetitions ans =
วิธีที่ดีที่สุดในการผนวกสตริงเข้ากับตัวแปรสตริงคือการใช้ + หรือ +=เนื่องจากสามารถอ่านได้และรวดเร็ว พวกเขายังเร็วอีกด้วย นอกเหนือจากนี้ หากคุณใช้ 2 สตริง สามารถใช้ append() ได้ หากคุณกำลังเชื่อมรายการสตริง วิธีที่แนะนำคือการใช้ join() เนื่องจากจะยอมรับรายการสตริงและเชื่อมเข้าด้วยกัน และสามารถอ่านได้
ด้วยการติดตั้ง Python 64 บิตและหน่วยความจำ 64 GB สตริง Python 2 ประมาณ 63 GB น่าจะเป็นไปได้ค่อนข้างมาก หากคุณสามารถอัพเกรดหน่วยความจำได้มากกว่านั้น สตริงที่เป็นไปได้สูงสุดของคุณควรยาวขึ้นตามสัดส่วน แต่สิ่งนี้มาพร้อมกับการตีรันไทม์ ด้วยการติดตั้ง Python แบบ 32 บิตทั่วไป หน่วยความจำทั้งหมดที่คุณสามาร