文章目錄
- 一、字串的創建和賦值
- 二、基本特性
- 1.連接運算子和重復運算子
- 2.成員運算子
- 3.正向索引和反向索引
- 4.切片
- 5.for回圈訪問
- 三、字串內建方法
- 1.字串型別的判斷與轉換
- 2.字串的資料清洗
- 3.字串的位置調整
- 4.字串的搜索和統計
- 5.字串的分離和拼接
- 四、拓展及示例(string模塊)
- 1.隨機生成100個驗證碼(兩個數字四個字母隨機組合)
- 2.小學生計算能力測驗系統
- 3.判斷輸入字串是否為回文字符(字符反過來和正序完全相同)
一、字串的創建和賦值
字串或串(String)是由數字、字母、下劃線組成的一串字符,Python 里面最常見的型別, 可以簡單地通過在引號間(單引號,雙引號和三引號)包含字符的方式創建它,
常用的轉義符號:
二、基本特性
1.連接運算子和重復運算子
example:
name = 'westos'
print('hello ' + name)
# 1元 + 1分 = 1元 + 0.01元 = 1.01元
print('hello' + str(1))
print("*" * 30 + '學生管理系統' + '*' * 30)

2.成員運算子
example:
data = pd.read_csv(
'https://labfile.oss.aliyuncs.com/courses/1283/adult.data.csv')
print(data.head())

3.正向索引和反向索引
example:
s = 'WESTOS'
print(s[0]) # 'W'
print(s[3]) # 'T'
print(s[-3]) # 'T'

4.切片
example:
s = 'hello westos'
print(s[1:3]) # 'el'
print(s[:3]) # 'hel'
print(s[:5]) # 拿出字串的前5個字符
print(s[1:]) # 'ello westos'
print(s[2:]) # 'llo westos'
print(s[:]) # 拷貝字串
print(s[::-1]) # 倒序輸出

5.for回圈訪問
example:
s = 'westos'
count = 0
for item in s:
count += 1
print(f"第{count}個字符:{item}")

三、字串內建方法
1.字串型別的判斷與轉換
1. 型別判斷
s = 'HelloWESTOS'
print(s.isalnum()) %判斷是否是字母或數字
print(s.isdigit()) %判斷是否是數字
print(s.isupper()) %判斷是否為大寫
2. 型別的轉換
print('hello'.upper()) %均轉換為大寫
print('HellO'.lower()) %均轉換為小寫
print('HellO WOrld'.title()) %首字母大寫
print('HellO WOrld'.capitalize()) %capitalize()將字串的第一個字母變成大寫,其他字母變小寫
print('HellO WOrld'.swapcase()) %swapcase() 方法用于對字串的大小寫字母進行轉換

2.字串的資料清洗
lstrip: 洗掉字串左邊的空格(指廣義的空格: \n, \t, ' ')
rstrip: 洗掉字串右邊的空格(指廣義的空格: \n, \t, ' ')
strip: 洗掉字串左邊和右邊的空格(指廣義的空格: \n, \t, ' ')
replace: 替換函式, 洗掉中間的空格, 將空格替換為空,replace(" ", )
a = " hello ".strip()
print(a)
b = " hello ".lstrip()
print(b)
c = " hello ".rstrip()
print(c)
d = " hel lo ".replace(" ", "")
print(d)

3.字串的位置調整
print("學生管理系統".center(50))
print("學生管理系統".center(50, "*"))
print("學生管理系統".center(50, "-"))
print("學生管理系統".ljust(50, "-"))
print("學生管理系統".rjust(50, "-"))

4.字串的搜索和統計
s = "hello westos"
print(s.find("llo"))
print(s.index("llo"))
print(s.find("xxx"))
print(s.count("xxx"))
print(s.count("l"))
print(s.count("o"))
#print(s.index("xxx")) %index如果找到子串,則回傳子串開始的索引位置,否則報錯(拋出例外).

5.字串的分離和拼接
ip = "172.25.254.100"
print(ip.split('.'))
items = ip.split('.')
print(items)
print("-".join(items))

四、拓展及示例(string模塊)
1.隨機生成100個驗證碼(兩個數字四個字母隨機組合)
import random
import string
print(random.choice("0123456789"))
print(random.choice("0123456789") + random.choice('0123456789'))
print(string.ascii_letters)
print(random.sample(string.ascii_letters, 4))
print("".join(random.sample(string.ascii_letters, 4)))
print( "".join(random.sample(string.digits, 2)) + "".join(random.sample(string.ascii_letters, 4)))
for i in range(100): %回圈輸出100個由兩個數字和四個字母隨機組合的驗證碼
print("".join(random.sample(string.digits, 2)) + "".join(random.sample(string.ascii_letters, 4)))

2.小學生計算能力測驗系統
import random
count = 10
right_count = 0
for i in range(count):
num1 = random.randint(1, 10)
num2 = random.randint(1, 10)
symbol = random.choice(["+", "-", "*"])
result = eval(f"{num1}{symbol}{num2}")
question = f"{num1} {symbol} {num2} = ?"
print(question)
user_answer = int(input("Answer:"))
if user_answer == result:
print("Right")
right_count += 1
else:
print("Error")
print("Right percent: %.2f%%" %(right_count/count*100))

3.判斷輸入字串是否為回文字符(字符反過來和正序完全相同)
s = input('輸入字串:')
result = "回文字串" if s == s[::-1] else "不是回文字串"
print(s + "是" + result)
或者:
s = input("請輸入字串:")
if s[:] == s[::-1]:
print(f"{s}是回文字符")
else:
print(f"{s}不是回文字符")


轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/257534.html
標籤:python
上一篇:二十個集合常見面試題(附答案)

