1、換行
2、指標符tab
1、連接操作符與重復操作符
連接操作符:
print('hello '+'westos')
hello westos
重復字符
print('*'*50+'學生管理系統'+'*'*50)
**************************************************學生管理系統**************************************************
2、成員操作符
判斷是或者不是
s= 'hello westos'
print('westos' in s)
print('westos' not in s)
#結果
True
False
3、索引
正向索引:從0開始(從左向右數)
反向索引:從-1開始(從右向左數)
s = 'westos'
print(s[0])
print(s[-2])
#結果
w
o
4、切片
s[start:end:step]
s[:end]:
s[start:]:
示例1
for x in range(3):
print(f'{
x}',end='')
print()
for x in range(1,4):
print(f'{
x}',end='')
print()
for x in range(1,6,2):
print(f'{
x}',end='')
print()
#結果
012
123
135
示例2
s = 'westos'
print(s[:5])
print(s[1:3])
#結果
westo
es
總結
字符串的前n個字符: s[:n]
字符串除了前n個元素的之外的元素:s[n:]
拷貝字符串:s[:]
字符串倒序:s[::-1]
5、for循環訪問
count=0
for item in 'westos':
count +=1
print(f'第{
count}個字母是{
item}')
#結果
第1個字母是w
第2個字母是e
第3個字母是s
第4個字母是t
第5個字母是o
第6個字母是s
用戶輸入一個字符串,判斷字符串是否為回文字符串
例入aba,abba也是回文字符串,abc不是回文字符串
x = str(input("請輸入字符串: "))
if x == x[::-1]:
print("回文字符串")
else:
print("不是回文字符串")
#結果
請輸入字符串: >? aba
回文字符串
1、判斷數據類型
s = 'Hello WESTOS'
print(s.isalnum())
print(s.isdigit())
print(s.isupper())
#結果
False
False
False
2、類型的轉換
print('hello'.upper())
print('HELLO'.lower())
print('HELLO'.capitalize())
#結果
HELLO
hello
Hello
3、平日裡大小寫的應用
choice = input("是否繼續安裝程序(y|Y)")
if choice.lower() == 'y':
print("正在安裝程序")
#結果
是否繼續安裝程序(y|Y)>? y
正在安裝程序
4、判斷字符串的開頭的和結尾
判斷開頭
url = 'http://www.baidu.com'
if url.startswith('http'):
print(f'{
url}是http協議')
#結果
http://www.baidu.com是http協議
判斷結尾
filename = input('請輸入文件類型:')
if filename.endswith('.png'):
print(f'{
filename}是圖片文件')
elif filename.endswith('.mp3'):
print(f'{
filename}是音樂文件')
else:
print(f"{
filename}其他文件")
5、數據清洗
lstrip: 刪除字符串左邊的空格(指的是廣義的空格:\n, \t, '')
rstrip: 刪除字符串右邊的空格(指的是廣義的空格:\n, \t, '')
replace: 替換函數,刪除中間的空格,,將中間的空格替換為空
示例1
去掉空格
" hello ".strip() $去掉全部空格
'hello'
" hello ".rstrip() $去掉右邊空格
' hello'
" hello ".lstrip() $去掉左邊空格
'hello '
" hello hello ".replace(" ","") $替換空格
'hellohello'
示例2
調整位置
print("學生管理系統".center(50))
print("學生管理系統".center(50, "*"))
print("學生管理系統".ljust(50, "*"))
print("學生管理系統".rjust(50, '*'))
#結果
學生管理系統
**********************學生管理系統**********************
學生管理系統********************************************
********************************************學生管理系統
1、搜索子串
s = 'hello westos'
print(s.find("to")) $空格也要算一個位置
print(s.index("to"))
#結果
9
9
總結:
find、如果找到字串,則返回自創開始索引的位置,否則返還-1
idnex,如果找到字串,則返回自創開始索引的位置,否則報錯(拋出異常)
2、字符串的分離和拼接
判斷地址的合法性,判斷每個ip是否在0到255之間
將四個數字用’-'拼接起來
ip = '172.25.254.100'
item1= ip.split('.') $分離
print(f"{
item1}")
item2 = '-'.join(item1) $拼接
print(f"{
item2}")
#結果
['172', '25', '254', '100']
172-25-254-100
3、字串的練習
#需求生成100個驗證碼,每個驗證碼由兩個數字和2個字母
import random
random.choice("0123456789") #數字
import string
string.digits #數字
import string
string.ascii_letters #大小寫
因此用下列代碼即可實現
import random
import string
for i in range(100):
print("".join (random.sample(string.digits,2))+"".join (random.sample(string.ascii_letters,2)))
# 實現效果
50pO
93Zk
30eH
95Xr
92If
。。。
count = 10
right_number = 0
for i in range(10):
num1 = random.randint(1, 10)
num2 = random.randint(1, 10)
symbol = random.choice(["+", "-", "*"])
x = eval(f"{
num1} {
symbol} {
num2}") $ python解析字符串,返還輸出
question = f"{
num1} {
symbol} {
num2} = ?"
print(question)
print(type(x), x)
user_answer = int(input("你的答案是:"))
if user_answer == x:
print("答案正確")
right_number +=1
else:
print("答案錯誤")
print("正確率為: %.2f%%" %(right_number/count*100)) $兩個%%表示轉移%