หน้าแรก
หน้าแรก
หากคุณต้องการเฉพาะจำนวนเต็มบวก คุณสามารถแยกและค้นหาตัวเลขได้ดังนี้: [int(s) สำหรับ s ใน str.split() if s.isdigit()][23, 11, 2] สำหรับกรณีอื่นๆ การใช้นิพจน์ทั่วไปจะเป็นทางเลือกที่ดีที่สุด นอกจากนี้ เมื่อแยกค่า จะเป็นการดีที่สุดที่จะแปลงเป็น int จากสตริง ตัวอย่างเช่น: [float(s) for s in re.findall(
คลาสสตริงมีวิธีการแทนที่ที่สามารถใช้เพื่อแทนที่สตริงย่อยในสตริง เราสามารถใช้วิธีนี้เพื่อแทนที่อักขระที่เราต้องการลบด้วยสตริงว่าง ตัวอย่างเช่น: >>> "Hello people".replace("e", "") "Hllo popl" หากคุณต้องการลบอักขระหลายตัวออกจากสตริงในบรรทัดเดียว ควรใช้
สตริงฐานสิบหกมักมีคำนำหน้า 0x หากคุณมีคำนำหน้านี้และสตริงที่ถูกต้อง คุณสามารถใช้ int(string, 0) เพื่อรับจำนวนเต็ม 0 มีไว้เพื่อบอกฟังก์ชันให้แปลค่าฐานจากคำนำหน้าโดยอัตโนมัติ ตัวอย่างเช่น: >>> int("0xfe43", 0) 65091 หากไม่มีคำนำหน้า 0x คุณสามารถผ่าน 16 แทน 0 เพื่อระบุฐานของตัวเลขได
นี่ไม่ใช่สิ่งที่คุณทำใน Python จริงๆ เนื่องจากตัวแปรต่างๆ เป็นการตั้งชื่อการแมปกับอ็อบเจกต์ ออบเจ็กต์เดียวใน Python ที่มีชื่อบัญญัติคือโมดูล ฟังก์ชัน และคลาส และแน่นอนว่าไม่รับประกันว่าชื่อบัญญัตินี้มีความหมายใดๆ ในเนมสเปซหลังจากฟังก์ชันหรือคลาสถูกกำหนดหรือนำเข้าโมดูล ชื่อเหล่านี้สามารถแก้ไขได้หลังจ
คุณสามารถใช้ random.choice(list_of_choices) เพื่อรับอักขระแบบสุ่ม จากนั้นวนซ้ำและรับรายการและสุดท้ายเข้าร่วมรายการนี้เพื่อรับสตริง รายการตัวเลือกที่นี่คือตัวพิมพ์ใหญ่และตัวเลข ตัวอย่างเช่น: import string import random def get_random_string(length): random_list = [] for i
สตริงใน Python นั้นเปลี่ยนไม่ได้ ซึ่งหมายความว่าเมื่อสร้างสตริงแล้ว จะไม่สามารถเปลี่ยนแปลงได้ เมื่อคุณสร้างสตริง และถ้าคุณสร้างสตริงเดียวกันและกำหนดให้กับตัวแปรอื่น ทั้งคู่จะชี้ไปที่สตริง/หน่วยความจำเดียวกัน ตัวอย่างเช่น >>> a = 'hi' >>> b = 'hi' >>> id(a)
แบ็กสแลชเป็นตัวละครหลบหนี มันถูกใช้เพื่อหลีกอักขระเช่นอัญประกาศ เครื่องหมายอัญประกาศคู่ บรรทัดใหม่ ฯลฯ เมื่อเราพิมพ์สตริงที่มีแบ็กสแลช เราจะเห็นสองครั้งเนื่องจากแบ็กสแลชจำเป็นในการหลีกหนีจากตัวมันเอง หมายความว่าเรากำลังบอกล่ามว่าแบ็กสแลชนี้จะใช้เป็นแบ็กสแลชเท่านั้นและไม่ใช่เป็นอักขระหลีก ตัวอย่างเช่
ทุกฟังก์ชันมีคุณสมบัติที่เรียกว่า __name__ ติดอยู่ เราสามารถเข้าถึงคุณสมบัตินี้และรับชื่อของฟังก์ชันได้ ตัวอย่างเช่น: def some_func(): return 0 print some_func.__name__ สิ่งนี้จะให้ผลลัพธ์แก่เรา: some_func
หากคุณต้องการรันคำสั่ง Python คุณสามารถใช้ exec(string) ตัวอย่างเช่น >>> my_code = 'print "Hello World!"' >>> exec(my_code) Hello World! แต่ถ้าคุณเพียงแค่ต้องการประเมินค่าของนิพจน์ คุณสามารถใช้ eval() ตัวอย่างเช่น >>> my_expression = "5 + 3" &g
ในการสร้างสตริงหลายบรรทัด แทนที่จะใช้อัญประกาศเดี่ยว/คู่หนึ่งคู่ เราใช้สามคู่ ตัวอย่างเช่น multiline_str = """ My multi-line string """ print multiline_str สิ่งนี้จะให้ผลลัพธ์: My multi-line string โปรดทราบว่าคุณไม่สามารถแก้ไขสตริงโดยใช้สัญกรณ์นี้
ในการตรวจสอบว่ามีสตริงใดในอาร์เรย์อยู่ในสตริงอื่นหรือไม่ คุณสามารถใช้ฟังก์ชันใดก็ได้ ตัวอย่าง arr = ['a', 'e', 'i', 'o', 'u'] str = "hello people" if any(c in str for c in arr): print "Found a match" ผลลัพธ์ สิ่งนี้จะให้ผลลั
ในการแปลงสตริงเป็นไบต์ใน Python 3 คุณสามารถใช้ฟังก์ชัน encode() จากคลาสสตริงได้ ตัวอย่างเช่น >>> s = u"HellΘ WΘrld" >>> s.encode('utf-8') 'Hell\xce\x98 W\xce\x98rld'
สตริงว่างคือ เท็จ ซึ่งหมายความว่าจะถือว่าเป็นเท็จในบริบทบูลีน คุณจึงใช้สตริงที่ไม่ใช่สตริงได้ ตัวอย่าง string = "" if not string: print "Empty String!" ผลลัพธ์ สิ่งนี้จะให้ผลลัพธ์: Empty String! ตัวอย่าง หากสตริงของคุณมีช่องว่างได้ และคุณยังต้องการให้ประเมินว่าเป
มีสองวิธีในการยกเลิกการ Escape สตริงที่ Escape ของแบ็กสแลชใน Python อันดับแรกคือการใช้ literal_eval เพื่อประเมินสตริง โปรดทราบว่าในวิธีนี้ คุณต้องล้อมรอบสตริงในเครื่องหมายคำพูดอีกชั้นหนึ่ง ตัวอย่างเช่น: >>> import ast >>> a = '"Hello,\\nworld"' >>> print
การแบ่งส่วนนอกขอบเขตของลำดับ (อย่างน้อยสำหรับบิวด์อิน) จะไม่ทำให้เกิดข้อผิดพลาด การทำดัชนีจะส่งกลับรายการเดียว แต่การแบ่งส่วนจะส่งกลับรายการรองของรายการ ดังนั้นเมื่อคุณพยายามสร้างดัชนีค่าที่ไม่มีอยู่ จะไม่มีการคืนค่าใดๆ แต่เมื่อคุณแบ่งซีเควนซ์นอกขอบเขต คุณยังสามารถส่งคืนลำดับที่ว่างเปล่าได้ ตัวอย่าง
คุณสามารถใช้การจัดรูปแบบสตริงเพื่อจัดรูปแบบตัวเลขทศนิยมให้เป็นความกว้างคงที่ใน Python ตัวอย่างเช่น หากคุณต้องการให้จุดทศนิยมตรงกับความกว้าง 12 อักขระและ 4 หลักทางด้านขวาของจุดทศนิยม คุณสามารถใช้สิ่งต่อไปนี้: >>> x = 12.35874 >>> print "{:12.4f}".format(x) &n
ในการจัดเรียงรายการในสถานที่ เช่น เรียงลำดับรายการเองและเปลี่ยนลำดับในรายการนั้น คุณสามารถใช้ sort() ในรายการสตริงได้ ตัวอย่างเช่น พิมพ์ a[ผู้ติดตาม, สวัสดี, ของฉัน] หากคุณต้องการรักษารายการเดิมไว้เหมือนเดิมและต้องการรายการองค์ประกอบที่เรียงลำดับใหม่แทน คุณสามารถใช้ sorted(list) ตัวอย่างเช่น พิมพ
หากต้องการเชื่อมสตริงกับตัวเลข คุณต้องแปลงตัวเลขเป็นสตริงโดยใช้ str(number) ตัวอย่างเช่น >>> a = "string" >>> b = 1 >>> print a + str(b) string1 ใน Python 2 คุณยังสามารถใช้ backtick(``) เพื่อล้อมรอบตัวเลขและรับผลลัพธ์เดียวกันกับตัวเลขและสตริง โปรดทราบว่า backtic
หากคุณมีเฉพาะอักขระ ASCII และต้องการลบอักขระที่ไม่สามารถพิมพ์ได้ วิธีที่ง่ายที่สุดคือกรองอักขระเหล่านั้นออกโดยใช้ string.printable ตัวอย่างเช่น >>> import string >>> filter(lambda x: x in string.printable, '\x01string') string ไม่ได้พิมพ์ 0x01 เนื่องจากไม่ใช่อักขระที่พิมพ์ไ
มีสองวิธีในการยกเลิกการ Escape สตริงที่ Escape ของแบ็กสแลชใน Python อันดับแรกคือการใช้ literal_eval เพื่อประเมินสตริง โปรดทราบว่าในวิธีนี้ คุณต้องล้อมรอบสตริงในเครื่องหมายคำพูดอีกชั้นหนึ่ง ตัวอย่างเช่น: >>> import ast >>> a = '"Hello,\\nworld"' >>> print