Python Strängar

字符串字面量

Python中的字符串字面量由单引号或双引号括起。

hello är lika med "hello".

Du kan använda print() Funktionen visar en strängtext:

Exempel

print("Hello")
print('Hello')

Kör ett exempel

Tilldela sträng till variabel med sträng

Du kan tilldela en sträng till en variabel genom att använda variabelnamnet följt av ett likhetstecken och strängen:

Exempel

a = "Hello"
print(a)

Kör ett exempel

Flerradig sträng

Du kan använda tre citationstecken för att tilldela en variabel flera rader sträng:

Exempel

Du kan använda tre dubbelcitat:

a = """Python är ett brett använt generellt, högnivå programmeringsspråk. 
Det designades ursprungligen av Guido van Rossum 1991 
och utvecklad av Python Software Foundation. 
Det utvecklades huvudsakligen för att lägga vikt vid läsbarhet i kod: 
och dess syntax tillåter programvarudesigners att uttrycka koncept på färre rader kod."""
print(a)

Kör ett exempel

eller tre enkelcitat:

Exempel

a = '''Python är ett brett använt generellt, högnivå programmeringsspråk. 
Det designades ursprungligen av Guido van Rossum 1991 
och utvecklad av Python Software Foundation. 
Det utvecklades huvudsakligen för att lägga vikt vid läsbarhet i kod: 
och dess syntax tillåter programvarudesigners att uttrycka koncept på färre rader kod.
print(a)

Kör ett exempel

Kommentar:I resultatet placeras radbrytningarna på samma plats som i koden.

Strängar är arrayer

Som många andra populära programmeringsspråk är strängar i Python en byte阵 som representerar unicode-tecken.

Men Python har ingen teckentyp, ett enskilt tecken är en sträng med längd 1.

Kurvor kan användas för att komma åt element i en sträng.

Exempel

Hämta tecknet på position 1 (kom ihåg att den första positionen är 0):

a = "Hello, World!"
print(a[1])

Kör ett exempel

Klippning

Du kan använda klippningsnotation för att returnera ett visst område av tecken.

Specificera startindex och slutindex, separerade med kolon, för att returnera en del av strängen.

Exempel

Hämta tecken från position 2 till position 5 (exklusive):

b = "Hello, World!"
print(b[2:5])

Kör ett exempel

Negativa index

Använd negativ index för att skära av från slutet av strängen:

Exempel

Hämta tecken från position 5 till position 1, räknar från slutet av strängen:

b = "Hello, World!"
print(b[-5:-2])

Kör ett exempel

字符串长度

如需获取字符串的长度,请使用 len() 函数。

Exempel

len() 函数返回字符串的长度:

a = "Hello, World!"
print(len(a))

Kör ett exempel

Strängmetoder

Python 有一组可用于字符串的内置方法。

Exempel

strip() 方法删除开头和结尾的空白字符:

a = " Hello, World! "
print(a.strip()) # returns "Hello, World!"

Kör ett exempel

Exempel

lower() 返回小写的字符串:

a = "Hello, World!"
print(a.lower())

Kör ett exempel

Exempel

upper() 方法返回大写的字符串:

a = "Hello, World!"
print(a.upper())

Kör ett exempel

Exempel

replace() 用另一段字符串来替换字符串:

a = "Hello, World!"
print(a.replace("World", "Kitty"))

Kör ett exempel

Exempel

split() 方法在找到分隔符的实例时将字符串拆分为子字符串:

a = "Hello, World!"
print(a.split(",")) # returns ['Hello', ' World!']

Kör ett exempel

请使用我们的字符串方法参考手册,学习更多的字符串方法。

检查字符串

如需检查字符串中是否存在特定短语或字符,我们可以使用 in 或 not in 关键字。

Exempel

检查以下文本中是否存在短语 "ina":

txt = "China is a great country"
x = "ina" in txt
print(x)

Kör ett exempel

Exempel

检查以下文本中是否没有短语 "ina":

txt = "China is a great country"
x = "ain" not in txt
print(x) 

Kör ett exempel

字符串级联(串联)

如需串联或组合两个字符串,您可以使用 + 运算符。

Exempel

将变量 a 与变量 b 合并到变量 c 中:

a = "Hello"
b = "World"
c = a + b
print(c)

Kör ett exempel

Exempel

在它们之间添加一个空格:

a = "Hello"
b = "World"
c = a + " " + b
print(c)

Kör ett exempel

字符串格式

正如在 Python 变量一章中所学到的,我们不能像这样组合字符串和数字:

Exempel

age = 63
txt = "My name is Bill, I am " + age
print(txt)

Kör ett exempel

但是我们可以使用 format() 方法组合字符串和数字!

format() 方法接受传递的参数,格式化它们,并将它们放在占位符 {} 所在的字符串中:

Exempel

使用 format() 方法将数字插入字符串:

age = 63 
txt = "Min namn är Bill, och jag är {}"
print(txt.format(age))

Kör ett exempel

format() Metoden accepterar ett obegränsat antal parametrar och placeras i respektive platshållare:

Exempel

quantity = 3
itemno = 567
price = 49.95
myorder = "Jag vill {} stycken av artikel {} för {} dollar."
print(myorder.format(quantity, itemno, price))

Kör ett exempel

Du kan använda indexnumret {0} För att säkerställa att parametrarna placeras i korrekta platshållare:

Exempel

quantity = 3
itemno = 567
price = 49.95
myorder = "Jag vill betala {2} dollar för {0} stycken av artikel {1}."
print(myorder.format(quantity, itemno, price))

Kör ett exempel

Strängmetoder

Python har ett antal inbyggda metoder som kan användas på strängar.

Kommentar:Alla strängmetoder returnerar en ny värde. De ändrar inte den ursprungliga strängen.

Metod Beskrivning
capitalize() Konvertera det första tecknet till stora bokstäver.
casefold() Konvertera strängen till små bokstäver.
center() Returnera en centrerad sträng.
count() Returnera antalet gånger det specifika värdet uppträder i strängen.
encode() Returnera strängens kodningsversion.
endswith() Om strängen slutar med det specifika värdet, returneras true.
expandtabs() Ställ in tab-storleken för strängen.
find() Sök efter det specifika värdet i strängen och returnera dess plats.
format() Formatera den specifika värdet i strängen.
format_map() Formatera den specifika värdet i strängen.
index() Sök efter det specifika värdet i strängen och returnera dess plats.
isalnum() Om alla tecken i strängen är bokstäver eller siffror, returneras True.
isalpha() Om alla tecken i strängen finns i alfabetet, returneras True.
isdecimal() Om alla tecken i strängen är decimaltal, returneras True.
isdigit() Om alla tecken i strängen är siffror, returneras True.
isidentifier() Om strängen är en identifierare, returneras True.
islower() Om alla tecken i strängen är små bokstäver, returneras True.
isnumeric() Om alla tecken i strängen är siffror, returneras True.
isprintable() Om alla tecken i strängen är utskrivbara, returneras True.
isspace() Om alla tecken i strängen är blanktecken, returneras True.
istitle() Returnerar true om strängen följer titelreglerna.
isupper() Returnerar true om alla tecken i strängen är stora bokstäver.
join() Koppla ihop elementen från ett itererbart objekt till slutet av strängen.
ljust() Returnera den vänstra justerade versionen av strängen.
lower() Konvertera strängen till små bokstäver.
lstrip() Returnera den vänstra trimmade versionen av strängen.
maketrans() Returnera den konverteringsmatris som används i omvandlingen.
partition() Returnera en tupel där strängen delas upp i tre delar.
replace() Returnera en sträng där det angivna värdet ersätts med det angivna värdet.
rfind() Sök det angivna värdet i strängen och returnera den sista platsen där det hittas.
rindex() Sök det angivna värdet i strängen och returnera den sista platsen där det hittas.
rjust() Returnera den högra justerade versionen av strängen.
rpartition() Returnera en tupel där strängen delas upp i tre delar.
rsplit() Dela upp strängen vid det angivna avskiljarteknet och returnera en lista.
rstrip() Returnera den högra trimmade versionen av strängen.
split() Dela upp strängen vid det angivna avskiljarteknet och returnera en lista.
splitlines() Dela upp strängen vid radbrytningar och returnera en lista.
startswith() Returnerar true om strängen börjar med det angivna värdet.
strip() Returnera en klippt version av strängen.
swapcase() Byt storlek på bokstäverna, små bokstäver blir stora och tvärtom.
title() Konvertera första bokstaven i varje ord till stora bokstäver.
translate() Returnera den konverterade strängen.
upper() Konvertera strängen till stora bokstäver.
zfill() Fyll i angivet antal 0-värden i början av strängen.

Kommentar:Alla strängmetoder returnerar en ny värde. De ändrar inte den ursprungliga strängen.