Python 數據類型 str int float


 

字符串的定義

# 使用轉義“\”使得引號內的引號顯示
str1 = 'I\'am a student'
str2 = "Jason said:\"I like\000 you\""
print(str1,str2,sep="\n")

str3 = "jiangsu"
print(str3[2])      #索引從零開始
print(str3[0:6])        #[起始位置:結束位置]
print(str3[1:6:2])      #[起始位置:結束位置:步進值]
print(str3[2:])         #[起始位置:]不寫后面,去索引后面
print(str3[:2])         #[:結束位置]不寫前面,取索引前面

 

注意事項

str1='' #空字符串
str2=len('')
str1=' ' #有空格的字符串,非空字符串
str2=len(' ')
''!=' '

 

常用轉義符

print('hello\tpython') #\t 橫向制表符,空出四個空格,鍵盤tab鍵
print('hello\npython') #\n 換行符
print('hello \\t') #打印出\t,轉義字符也當做字符串的一部分
print(r'hello\tpython') #字符串前加個r,取消轉義

 

常用字符串操作

查看字符串長度 len()函數

len('hello python') #查看字符串長度
len('hello python啊') #查看字符串長度,中英文均占一個字符長度

大小寫轉化 lower(),upper()函數

str3='HELLO'
str4='python'
str5='MyName'
print(str3.lower()) #將字符串中所有大寫字符轉小寫
print(str4.upper()) #將字符串中所有小寫字符轉大寫
print(str5.lower())
print(str5.upper())

字符串連接

str5='hello'
str6='python'
print(str5+str6) #字符串用“+”拼接
print(str5+','+str6)
print(str5+'\t'+str6)
str7='hello'
','.join(str7) #用“,”把字符串分開
str8='a'.join('python') #本行的a與下行的a需一致方可完成列表分割
str9=str8.split('a')
print(str9)

字符串切片

str11='abcdefg'
str11[1:] #切出索引1到最后
str11[::] #切出所有
str11[::2] #步長為2,切所有

字符串操作進階
實際業務中字符串常用操作:取出字符串中的數字、字符、大小寫字母

方法1:for循環 str.isdigit() 檢測字符串是否只由數字組成 str.islower() 檢測字符串是否只由小寫字母組成 str.isupper() 檢測字符串是否只由大寫字母組成

str12='AAbbbCC223'
number=''
lower=''
upper=''
for i in str12:
    if i.isdigit():
        number=number+i
    elif i.islower():
        lower=lower+i
    elif i.isupper():
        upper=upper+i
print(number+'\t'+lower+'\t'+upper)

方法2:正則表達式

\d 匹配任意數字,等價於[0-9]
\D 匹配任意非數字
[0-9] 匹配任何數字,類似於[0123456789]
[a-z] 匹配任意小寫字母
[A-Z] 匹配任意大寫字母
[a-zA-Z0-9] 匹配任意字母及數字

import re #導入正則表達式re模塊
str13='AA1bbbCC223d'
print('.'.join(re.findall(r'[A-Za-z]',str13))) #提取字母,不區分大小寫
print(','.join(re.findall(r'[a-z]',str13))) #提取小寫字母
print('-'.join(re.findall(r'[A-Z]',str13))) #提取大寫字母
print('~'.join(re.findall(r'[0-9]',str13))) #提取數字
print(re.sub('\D','=',str13)) #提提取數字,參數1是匹配出任意非數字,用參數2替換掉,
re.findall(r'[A-Za-z]',str13)

數據類型強制轉換

注意:數字可以轉字符串,但只有只包含數字的字符串才能轉成數字類型

float(6) #整數轉浮點數
int(6.66) #浮點數轉整數
a=str(1.23) #數字轉字符串
print(a)
type(a)
int('a123') #錯誤,只有只包含數字的字符串才能轉成數字類型
int('1.23') #只有只包含數字的字符串才能轉成數字類型

其他

str11='a#b#c#d'
str12='?'
list11=['e','f','g','h']
str12.join(str11)
str11.split('#',1)

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM