Latest web development tutorials

สตริงหลาม

สตริงหลามมีใช้กันมากที่สุดชนิดข้อมูล เราสามารถใช้เครื่องหมายคำพูด ( 'หรือ ") เพื่อสร้างสตริง

สร้างสตริงง่ายมากตราบใดที่ตัวแปรที่มีการกำหนดค่า ตัวอย่างเช่น:

var1 = 'Hello World!'
var2 = "Python w3big"

งูหลามค่าสตริงเข้าถึง

งูหลามไม่สนับสนุนชนิดตัวเดียวตัวเดียวนอกจากนี้ยังใช้เป็นสตริงหลาม

งูหลามเข้าถึง substring คุณสามารถใช้วงเล็บที่จะสกัดกั้นตัวอย่างสตริงต่อไปนี้:

#!/usr/bin/python

var1 = 'Hello World!'
var2 = "Python w3big"

print "var1[0]: ", var1[0]
print "var2[1:5]: ", var2[1:5]

ผลที่ได้จากตัวอย่างข้างต้น:

var1[0]:  H
var2[1:5]:  ytho

ปรับปรุงสตริงหลาม

คุณสามารถปรับเปลี่ยนเป็นสตริงที่มีอยู่และกำหนดให้กับตัวแปรอื่นตัวอย่างต่อไปนี้:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

var1 = 'Hello World!'

print "更新字符串 :- ", var1[:6] + 'w3big!'

ตัวอย่างของผลของการดังกล่าวข้างต้น

更新字符串 :-  Hello w3big!

ตัวหนีงูหลาม

เมื่อคุณจำเป็นต้องใช้อักขระพิเศษในตัวละคร, Python ด้วย backslash (\) ตัวหนี ในตารางต่อไปนี้:

ตัวหนี ลักษณะ
\ (ในตอนท้ายของบรรทัด) ulink
\\ ทับขวา
\ ' ราคาเดียว
\ " คำพูดคู่
\ a ระฆัง
\ B Backspace (Backspace)
\ E หลบหนี
\ 000 ว่างเปล่า
\ n ห่อ
\ V แท็บแนวตั้ง
\ t แท็บแนวนอน
\ r เข้าสู่
\ F หน้า
\ Oyy ตัวละครแปดตัวแทน yy เช่น: \ Ø12แทนการขึ้นบรรทัดใหม่
\ XYY อักขระเลขฐานสิบหกตัวแทน yy เช่น: \ X0A แทนการขึ้นบรรทัดใหม่
\ อื่น ๆ การส่งออกของตัวละครอื่น ๆ ในรูปแบบทั่วไป

ผู้ประกอบการสตริงหลาม

ตัวแปรเช่นตารางต่อไปนี้เป็นสตริง "สวัสดีครับ" ค่าของตัวแปร B "งูใหญ่":

ผู้ประกอบการ ลักษณะ ตัวอย่าง
+ concatenation สตริง A + B เอาท์พุท: HelloPython
* * * * สตริงการส่งออกทำซ้ำ A * 2 เอาท์พุท: HelloHello
[] ได้รับตัวละครในสตริงโดยดัชนี a [1]E เอาท์พุท
[:] ส่วนการสกัดกั้นของสตริง a [1: 4]ell เอาท์พุท
ใน ผู้ประกอบการสมาชิก - หากสตริงมีอักขระที่ได้รับผลตอบแทนที่ทรู เอช 1 เอาท์พุท
ไม่ได้อยู่ใน ผู้ประกอบการสมาชิก - หากสายไม่ได้มีตัวละครที่ได้รับผลตอบแทนที่ทรู เอ็มไม่ได้อยู่ในการส่งออก 1
R / R สตริงเดิม - สตริงเดิม: สตริงทั้งหมดถูกนำมาใช้โดยตรงในสอดคล้องกับความหมายที่แท้จริงไม่มีตัวอักษรพิเศษหลบหนีหรือไม่พิมพ์ นอกจากนี้ยังมีสายเดิมก่อนที่จะมีคำพูดแรกที่มีตัวอักษร "R" (อาจจะเป็นกรณี) มากกว่ากับสตริงสามัญมีไวยากรณ์ที่เหมือนกันเกือบ พิมพ์ R '\ n' เอาท์พุท \ n และพิมพ์ R '\ n'เอาท์พุท \ n
% สตริงรูปแบบ ดูส่วนถัดไป

ตัวอย่างมีดังนี้

#!/usr/bin/python
# -*- coding: UTF-8 -*-

a = "Hello"
b = "Python"

print "a + b 输出结果:", a + b 
print "a * 2 输出结果:", a * 2 
print "a[1] 输出结果:", a[1] 
print "a[1:4] 输出结果:", a[1:4] 

if( "H" in a) :
    print "H 在变量 a 中" 
else :
	print "H 不在变量 a 中" 

if( "M" not in a) :
    print "M 不在变量 a 中" 
else :
	print "M 在变量 a 中"

print r'\n'
print R'\n'

ดังกล่าวข้างต้นผลการทำงานของโปรแกรม:

a + b 输出结果: HelloPython
a * 2 输出结果: HelloHello
a[1] 输出结果: e
a[1:4] 输出结果: ell
H 在变量 a 中
M 不在变量 a 中
\n
\n

การจัดรูปแบบสตริงหลาม

งูหลามสนับสนุนการส่งออกจัดรูปแบบสตริง แม้ว่านี้จะรวมถึงการแสดงออกที่ซับซ้อนมากการใช้งานพื้นฐานที่สุดคือการใส่ค่าเป็นสตริงระบุ% ใน

ในหลาม, และ C สตริงรูปแบบโดยใช้ไวยากรณ์เช่นเดียวกับฟังก์ชั่นที่ sprintf

ตัวอย่างต่อไปนี้:

#!/usr/bin/python

print "My name is %s and weight is %d kg!" % ('Zara', 21) 

ตัวอย่างของการส่งออกดังกล่าวข้างต้น:

My name is Zara and weight is 21 kg!

หลามสัญลักษณ์สตริงการจัดรูปแบบ:

สัญญลักษณ์ ลักษณะ
c% ตัวอักษรรูปแบบและรหัส ASCII ของพวกเขา
% s สตริงรูปแบบ
% d รูปแบบจำนวนเต็ม
u% รูปแบบ int ไม่ได้ลงนาม
o% การจัดรูปแบบฐานแปดไม่ได้ลงนาม
x% รูปแบบเลขฐานสิบหกไม่ได้ลงนาม
X% รูปแบบเลขฐานสิบหกได้รับการรับรอง (ตัวพิมพ์ใหญ่)
f% รูปแบบจำนวนจุดลอยตัวความถูกต้องสามารถระบุหลังจุดทศนิยม
E% สัญกรณ์วิทยาศาสตร์รูปแบบ floating point
E% การดำเนินการกับ E% โดยใช้สัญกรณ์วิทยาศาสตร์ลอยรูปแบบจุด
% g f% และ% E ชวเลข
G% f% E% และชวเลข
p% เลขฐานสิบหกอยู่จำนวนรูปแบบของตัวแปร

การจัดรูปแบบการเรียนการสอนผู้ประกอบการให้ความช่วยเหลือ:

สัญญลักษณ์ ฟังก์ชัน
* * * * กำหนดความกว้างหรือความแม่นยำทศนิยม
- จัดตำแหน่งของ Do ซ้าย
+ ตัวเลขบวกที่แสดงบนหน้าเครื่องหมายบวก (+)
<Sp> พื้นที่แสดงก่อนตัวเลขบวก
# แสดงศูนย์ในด้านหน้าของจำนวนฐานแปด ( '0') หน้าจอแสดงผลของฐานสิบหก '0x' หรือ '0X' (ขึ้นอยู่กับการใช้งาน 'X' หรือ 'X')
0 ตัวเลขแสดงเติมด้านหน้า '0' แทนช่องว่างเริ่มต้น
% '%%' เอาท์พุทเดียว '%'
(Var) การทำแผนที่ตัวแปร (พารามิเตอร์ Dictionary)
MN m คือความกว้างโดยรวมต่ำสุดของจอแสดงผล, N คือจำนวนของตำแหน่งทศนิยม (ถ้ามี)

งูหลามคำพูดที่สาม (คำพูดที่สาม)

สามคำพูดหลามสามารถคัดลอกสตริงที่ซับซ้อน:

หลามคำพูดที่สามช่วยให้สตริงในหลายเส้นสตริงสามารถมีการแบ่งบรรทัดแท็บและอักขระพิเศษอื่น ๆ

คำพูดไวยากรณ์ Triple คู่ของคำพูดเดียวหรือสองครั้งต่อเนื่อง (มักจะจับคู่กับ)

 >>> hi = '''hi 
there'''
>>> hi   # repr()
'hi\nthere'
>>> print hi  # str()
hi 
there  

คำพูดที่ทริปเปิช่วยให้โปรแกรมเมอร์จากหล่มอยู่ในเครื่องหมายและสตริงพิเศษเริ่มต้นที่จะเสร็จสิ้นในการรักษารูปแบบของสตริงขนาดเล็กที่เรียกว่ารูปแบบ WYSIWYG (WYSIWYG)

กรณีการใช้งานทั่วไปคือเมื่อคุณต้อง HTML หรือ SQL แล้วใช้การรวมกันของสตริงหนีสตริงพิเศษจะเป็นที่น่าเบื่อมาก

 errHTML = '''
<HTML><HEAD><TITLE>
Friends CGI Demo</TITLE></HEAD>
<BODY><H3>ERROR</H3>
<B>%s</B><P>
<FORM><INPUT TYPE=button VALUE=Back
ONCLICK="window.history.back()"></FORM>
</BODY></HTML>
'''
cursor.execute('''
CREATE TABLE users (  
login VARCHAR(8), 
uid INTEGER,
prid INTEGER)
''')

สตริง Unicode

งูหลามเป็นสตริงของ Unicode และสตริงปกติเป็นง่ายๆเป็น:

>>> u'Hello World !'
u'Hello World !'

คำคมก่อนพิมพ์เล็ก "U" แสดงที่สร้างขึ้นที่นี่เป็นสตริง Unicode หากคุณต้องการที่จะเพิ่มตัวละครพิเศษที่คุณสามารถใช้งูหลาม Unicode หนีการเข้ารหัส ในตัวอย่างต่อไปนี้:

>>> u'Hello\u0020World !'
u'Hello World !'

แทนที่ตัวตน \ u0020 แสดงอยู่ในตำแหน่งที่ได้รับการแทรก Unicode ค่าการเข้ารหัสอักขระ 0x0020 (อักขระช่องว่าง)


สตริงหลามในตัวฟังก์ชั่น

วิธีสตริง Python1.6 จาก 2.0 จะค่อยๆเพิ่มการผสม - พวกเขายังมีการเพิ่มไป Jython

วิธีการเหล่านี้บรรลุโมดูลสตริงวิธีการส่วนใหญ่ตารางต่อไปนี้แสดงตัวในการสนับสนุนของวิธีสตริงปัจจุบันวิธีการทั้งหมดรวมถึงการสนับสนุน Unicode บางคนโดยเฉพาะสำหรับ Unicode

ทาง ลักษณะ

string.capitalize ()

อักขระตัวพิมพ์ใหญ่ตัวอักษรตัวแรก

string.center (กว้าง)

กลับสตริงศูนย์เดิมและเบาะที่มีช่องว่างให้มีความยาวความกว้างของสตริงใหม่

string.count (STR ขอ = 0 ท้าย = len (สตริง))

ส่งกลับจำนวนครั้ง STR สตริงปรากฏภายใน STR เกิดขึ้นหาก Beg หรือจบที่ระบุถูกส่งกลับภายในช่วงที่ระบุ

string.decode (เข้ารหัส = 'UTF-8 ' ข้อผิดพลาด = 'เข้มงวด')

การเข้ารหัสการเข้ารหัสที่ระบุสตริงรูปแบบการถอดรหัสข้อผิดพลาดเริ่มต้นถ้าข้อยกเว้น ValueError เว้นแต่ข้อผิดพลาดที่ระบุไว้คือ 'ไม่สนใจ' หรือ 'แทนที่'

string.encode (เข้ารหัส = 'UTF-8 ' ข้อผิดพลาด = 'เข้มงวด')

ในการเข้ารหัสสตริงรูปแบบการเข้ารหัสที่ระบุข้อผิดพลาดเริ่มต้นถ้าข้อยกเว้น ValueError เว้นแต่ข้อผิดพลาดที่ระบุไว้คือ 'ไม่สนใจ' หรือ 'แทนที่'

string.endswith (obj ขอ = 0 ท้าย = len (สตริง))

ตรวจสอบว่าจุดสิ้นสุด obj สตริงถ้าระบุ Beg หรือสิ้นสุดภายในช่วงที่ระบุว่ามีการตรวจสอบสิ้นสุด obj และถ้าเป็นเช่นนั้นจะส่งกลับจริงเท็จอย่างอื่น

string.expandtabs (tabsize = 8)

สตริงในสัญลักษณ์แท็บเข้ามาในพื้นที่สัญลักษณ์แท็บหมายเลขเริ่มต้นของช่องว่างคือ 8

string.find (STR ขอ = 0 ท้าย = len (สตริง))

การตรวจสอบจะรวมอยู่ใน STR สตริงถ้าคุณขอและสิ้นสุดช่วงที่ระบุก็มีการตรวจสอบว่ามีอยู่ในช่วงที่ระบุถ้ามันเป็นจุดเริ่มต้นของค่าดัชนีจะถูกส่งกลับ -1 มิฉะนั้น

string.index (STR ขอ = 0 ท้าย = len (สตริง))

ด้วยการหา () วิธีการเดียวกัน แต่ถ้า STR สตริงไม่ได้ยกเว้นจะมีการรายงาน

string.isalnum ()

หากมีตัวอักษรอย่างน้อยหนึ่งและตัวอักษรทั้งหมดเป็นตัวอักษรหรือตัวเลขที่คุณกลับมา

กลับจริงเท็จอย่างอื่น

string.isalpha ()

หากมีตัวอักษรอย่างน้อยหนึ่งและตัวอักษรทั้งหมดที่มีตัวอักษรก็จะส่งกลับทรูมันนี่

มิฉะนั้นก็จะส่งกลับเท็จ

string.isdecimal ()

ถ้า string มีตัวเลขทศนิยมเพียงส่งกลับค่า True เท็จอย่างอื่น

string.isdigit ()

ถ้า string มีผลตอบแทนหลักจริงเท่านั้นมิฉะนั้นเท็จ

string.islower ()

ถ้า string มีอย่างน้อยหนึ่งตัวละครที่เป็นกรณี ๆ ไปและทั้งหมดของ (เป็นกรณี ๆ ไป) ตัวละครเหล่านี้เป็นตัวพิมพ์เล็กกลับจริงเท็จอย่างอื่น

string.isnumeric ()

ถ้าสตริงมีอักขระที่เป็นตัวเลขเท่านั้นก็จะส่งกลับจริงเท็จอย่างอื่น

string.isspace ()

ถ้า string มีช่องว่างเพียงผลตอบแทนจริงเท็จอย่างอื่น

string.istitle ()

หากสตริงเป็นชื่อ (ดูชื่อ ()) ส่งกลับจริงเท็จอย่างอื่น

string.isupper ()

ถ้า string มีอย่างน้อยหนึ่งตัวละครที่เป็นกรณี ๆ ไปและทั้งหมดของ (เป็นกรณี ๆ ไป) ตัวละครเหล่านี้เป็นตัวพิมพ์ใหญ่ก็จะส่งกลับจริงเท็จอย่างอื่น

String.Join (หมายเลข)

ในสตริงเป็นตัวคั่นจะ seq องค์ประกอบทั้งหมด (แสดงสตริง) เป็นสตริงใหม่

string.ljust (กว้าง)

ส่งกลับสตริงของอดีตซ้ายธรรมและเบาะที่มีช่องว่างให้ความยาวของความกว้างของสตริงใหม่

string.lower ()

สตริงในอักขระตัวพิมพ์ใหญ่ทั้งหมดแปลงเป็นตัวพิมพ์เล็ก

string.lstrip ()

ตัดทอนพื้นที่สตริงซ้าย

string.maketrans (intab, outtab])

maketrans () วิธีการใช้ในการสร้างตารางการแปลงแมปตัวอักษรสำหรับการสละสองพารามิเตอร์วิธีที่ง่ายที่สุดที่เรียกว่าอาร์กิวเมนต์แรกเป็นสตริงที่แสดงถึงตัวละครที่จะแปลงพารามิเตอร์ที่สองคือการเป็นตัวแทนสตริงของการแปลงเป้าหมาย .

แม็กซ์ (STR)

กลับสตริง STR ตัวอักษรที่ใหญ่ที่สุด

นาที (STR)

ผลตอบแทนที่ได้ตัวอักษรที่เล็กที่สุดสตริง STR

string.partition (STR)

bit เช่นหา () และแยก () รวมตำแหน่งครั้งแรกนับตั้งแต่ที่เกิดขึ้นจาก Str, สตริงเป็นอันดับ 3 องค์ประกอบ (string_pre_str, Str, string_post_str) หากไม่ได้อยู่ในสตริง STR string_pre_str == สตริง

string.replace (str1, str2, NUM = string.count (str1))

แทนที่สตริงใน str1 เข้า str2 ถ้า NUM ระบุแทนที่ไม่เกินครั้ง NUM

string.rfind (STR ขอ = 0 ท้าย = len (สตริง))

คล้ายกับการค้นพบ () ฟังก์ชัน แต่เริ่มมองจากทางด้านขวา

string.rindex (STR ขอ = 0 ท้าย = len (สตริง))

คล้ายกับดัชนี () แต่เริ่มต้นจากด้านขวา

string.rjust (กว้าง)

ส่งกลับสตริงของอดีตจัดชิดขวาและเบาะที่มีช่องว่างที่จะสตริงใหม่ของความกว้างความยาว

string.rpartition (STR)

คล้ายกับพาร์ทิชัน () ฟังก์ชัน แต่เริ่มมองจากทางด้านขวา

string.rstrip ()

นำปลายสตริงพื้นที่ของสตริง

String.split (STR = "" NUM = string.count (STR))

ใช้เวลาคั่นสตริง STR ชิ้นถ้าค่า NUM ระบุ NUM แล้วเท่านั้นสตริงย่อยแยกออกจากกัน

string.splitlines (NUM = string.count ( '\ n'))

แยกจากกันโดยแถวแต่ละแถวจะถูกส่งกลับเป็นส่วนหนึ่งของรายการที่มีเฉพาะส่วนที่ระบุถ้าแถว NUM NUM

string.startswith (obj ขอ = 0 ท้าย = len (สตริง))

ตรวจสอบว่าสตริงเริ่มต้นด้วย obj ก็จะส่งกลับจริงเท็จอย่างอื่น หาก Beg และสิ้นสุดค่าที่ระบุให้ตรวจสอบภายในช่วงที่ระบุ

string.strip ([obj])

lstrip บริหารในสตริง () และ rstrip ()

string.swapcase ()

สตริงพลิกในกรณี

string.title ()

ย้อนกลับ "ชื่อ" ของสตริงที่เป็นจุดเริ่มต้นของทุกคำนิยามตัวอักษรตัวพิมพ์เล็กที่เหลืออยู่ (ดู istitle ())

string.translate (Str, Del = "" )

ตาราง STR ที่กำหนด (256 ตัวอักษร) เพื่อแปลงสตริงตัวอักษร

เพื่อกรองตัวอักษรโต้เถียงเดล

string.upper ()

สตริงการแปลงตัวอักษรตัวพิมพ์เล็กตัวพิมพ์ใหญ่

string.zfill (กว้าง)

กลับสตริงของความกว้างความยาวสตริงสายเดิมธรรมขวา, เบาะด้วยศูนย์ในด้านหน้า

string.isdecimal ()

isdecimal () วิธีการตรวจสอบไม่ว่าจะเป็นสตริงที่ประกอบด้วยอักขระตำแหน่งเท่านั้น วิธีการนี้จะมีอยู่เฉพาะในวัตถุ Unicode