# Python字符串使用方法舉例分析
## 一、字符串基礎概念
### 1.1 什么是字符串
在Python中,字符串(String)是由零個或多個字符組成的不可變序列類型,使用單引號(')或雙引號(")包裹:
```python
str1 = 'Hello World'
str2 = "Python Programming"
當字符串包含多行內容時,可以使用三引號(”‘或”““):
multiline_str = """This is a
multi-line
string example"""
使用+
運算符連接字符串:
first_name = "張"
last_name = "三"
full_name = last_name + first_name # 輸出"張三"
使用*
運算符重復字符串:
separator = "-" * 20 # 生成20個連字符
使用len()
函數獲取字符串長度:
text = "人工智能"
length = len(text) # 返回4(中文按字符計數)
字符串支持從0開始的索引訪問:
s = "Python"
print(s[0]) # 'P'
print(s[-1]) # 'n'(負數表示從末尾開始)
切片語法為[start:end:step]
:
s = "HelloWorld"
print(s[2:5]) # 'llo'(包含2不包含5)
print(s[::2]) # 'Hlool'(步長為2)
print(s[::-1]) # 'dlroWolleH'(字符串反轉)
text = "Python"
print(text.upper()) # 'PYTHON'
print(text.lower()) # 'python'
print(text.title()) # 'Python'
s = "search example"
print(s.find("arch")) # 返回2(首次出現位置)
print(s.rfind("a")) # 從右側查找
print("ample" in s) # True(成員判斷)
text = "I like Java"
new_text = text.replace("Java", "Python")
csv_data = "a,b,c,d"
items = csv_data.split(",") # ['a','b','c','d']
new_str = "-".join(items) # 'a-b-c-d'
name = "李四"
age = 25
print("姓名:%s,年齡:%d" % (name, age))
print("{}今年{}歲".format(name, age))
print("{1}比{0}大".format(age, 30))
print(f"{name}的年齡是{age+2}") # 支持表達式計算
text = "中文"
utf8_bytes = text.encode('utf-8')
decoded = utf8_bytes.decode('utf-8')
gbk_bytes = text.encode('gbk')
try:
print(gbk_bytes.decode('utf-8'))
except UnicodeDecodeError:
print("編碼不匹配!")
"123".isdigit() # True(是否全數字)
"abc".isalpha() # True(是否全字母)
" ".isspace() # True(是否空白字符)
text = " 前后空格 "
print(text.strip()) # '前后空格'
print(text.lstrip()) # 去左空格
print(text.rstrip()) # 去右空格
def check_password(pwd):
if len(pwd) < 8:
return "密碼太短"
if not any(c.isupper() for c in pwd):
return "需要包含大寫字母"
# 其他檢查規則...
with open('server.log') as f:
error_lines = [line for line in f if "ERROR" in line]
dirty_data = " 價格:¥199.00 "
clean_price = float(dirty_data.strip().split("¥")[1])
頻繁字符串拼接應使用join()
而非+
“`python
result = “” for s in string_list: result += s
# 推薦 result = “”.join(string_list)
2. 使用字符串駐留(intern)機制優化大量重復字符串
3. 正則表達式預編譯:
```python
import re
pattern = re.compile(r'\d+') # 預編譯
本文系統介紹了Python字符串的: - 基礎定義與創建方式 - 核心操作方法(索引/切片/拼接) - 常用內置方法(查找/替換/分割) - 三種格式化字符串的演進 - 編碼處理與實際問題解決 - 典型應用場景示例
掌握這些知識點后,開發者可以高效處理文本數據,應對90%以上的字符串操作需求。建議結合具體項目實踐,深入理解字符串不可變特性帶來的編程范式影響。
附錄:常用字符串方法速查表
方法 | 描述 | 示例 |
---|---|---|
startswith() | 檢查開頭 | “hello”.startswith(“he”) → True |
endswith() | 檢查結尾 | “test.txt”.endswith(“.txt”) → True |
count() | 統計出現次數 | “abab”.count(“a”) → 2 |
isalnum() | 字母或數字 | “abc123”.isalnum() → True |
zfill() | 左側補零 | “42”.zfill(5) → “00042” |
”`
注:本文實際約2500字,完整2800字版本可擴展以下內容: 1. 增加更多實際案例(如網頁爬蟲中的字符串處理) 2. 深入講解正則表達式應用 3. 添加字符串性能對比測試數據 4. 擴展國際化和本地化相關字符串處理 5. 補充字符串與字節串的詳細區別說明
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。