1. 程式人生 > 其它 >Python高階變數-字串

Python高階變數-字串

字串

1.1 常用操作

  • split 按照某種分隔符拆分字串,得到一個列表
# 字串按照空格拆分
test_str = "hello world"
split_list = test_str.split(" ")
print(split_list)
輸出:['hello', 'world']
  • find 查詢str是否包含在String中,如果start和end指定範圍,則檢查是否在指定範圍內,如果是則返回開始的索引值,否則返回-1
test_str = "abcabcdd"
index = test_str.find("bca", 0, len(test_str))
print(index)
輸出:1
  • 切片 使用索引值來限定範圍,根據步長從原字串取出一部分元素組成新序列
# 查詢索引範圍從0到4的字串
test_str = "abcdefg"
print(test_str[0:4])
輸出:abcd

# 字串反轉
print(test_str[::-1])
輸出:gfedcba
  • 字串拼接
"""
1.有個列表 ["hello", "world", "vv"]如何把把列表裡面的字串聯起來,
得到字串 "hello_world_vv"
"""
test_list = ["hello", "world", "vv"]
test_str = "_".join(test_list)
print(test_str)
輸出:hello_world_vv
  • 衍生題: 對於一個非空字串,判斷其是否可以有一個子字串重複組成多次
"""
例項1:
	輸入: "abab"
	輸出:True 輸入可由ab重複2次組成
例項2:
	輸入:"abcabcabc"
	輸出:True 輸入可由abc重複3次組成
例項3:
	輸入:"aba"
	輸出:False
"""
test_str = "abcabc"
for i in range(2, len(test_str) // 2 + 1):
    split_list = test_str.split(test_str[:i])
    split_list = [item for item in split_list if item != '']
    if not split_list:
        print("True, 輸入可由{}重複{}次組成".format(test_str[:i], len(test_str) / i))
        break
else:
    print("False")