日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python之路day03--数据类型分析,转换,索引切片,str常用操作方法

發布時間:2025/3/17 python 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python之路day03--数据类型分析,转换,索引切片,str常用操作方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

數據類型整體分析

int :用于計算
bool:True False 用戶判斷
str:少量數據的存儲

list:列表 儲存大量數據 上億數據
[1,2,3,'zzy',[aa]]

元組:只讀列表
(1,23,'asdadas')

dist:字典 鍵值對的形式儲存,關系型
{'name':'小王八','age':16}
{'小王八':[12,3,'dsaa'],'二哥':[200,200]}

集合:求交集等
{1,2,33,'adsf'}

int bool str 數據轉換

int: i =2 print(bit_length(100)) #轉成2進制的最小位數1 0000 0001 #1 2 0000 0010 #2 3 0000 0011 #2
bool:True False int --->> str i =1 print(str(i),type(i)) # 1 <class 'int'>
str --->> int (只能是數字才能轉換成int類型) s = '113' print(int(s)) #113 int --> bool (非零數字轉換為bool,為T,0位False) i=1 j=0 print(bool(i)) #True print(bool(j)) #False# bool-->int (T為1,False為0) print(int(True)) #1 print(int(False)) #0 ps:
while True:
pass

while 1: #效率高,最終要轉為2進制
pass

str--->bool (非空字符串為True,空字符串為False) print(bool('')) #False print(bool('000')) #Trueprint(type(str(True))) #<class 'str'> print(type(str(False))) #<class 'str'>

?

str索引及切片

s = 'asdfghjkl' s1 = [0] #s1和s沒有任何關系,對原字符串進行切片(原字符串不變),是生成的新的字符串 s[首:尾:加步長] 索引從0開始,print(s[0]) 為a print(s[0:3]) -->asd #切片顧頭不顧尾print(s[0:6:2]) -->>adg print(s[0:]) -->>asdfghjkl 全部字符串 print(s[:]) -->>asdfghjkl 全部字符串 print(s[0::2]) -->>adgjl #步長必須要是規律的 1,2,3

#從后面取 步長-1 print(s[4:0:-1]) #gfds print(s[::-2]) #ljgda

?

字符串的操作放法及for循環

s = 'alex Wusir' # s1 = s.capitalize() #首字母大寫 print(s1) #Alex wusir s2 = s.upper() #全部大寫 s21 = s.lower() #全部小寫 print(s2,s21) #ALEX WUSIR alex wusir s3 = s.swapcase() #大小寫翻轉 print(s3) #ALEX wUSIR a = 'zhangyang zy yy' a1 = a.title() #每個隔開的(特殊字符和數字)單詞首字母大寫 print(a1) #Zhangyang Zy Yy

ps:

s_str = 'acEQ' you_input = input('請輸入驗證碼,不區分大寫小:') if you_input.lower() == s_str.lower():print('登錄成功')else:print('輸入有誤,請重試')
居中,空白填充 20長度
s = 'alex Wusir’ s5 =s.center(20,'%') print(s5)# %%%%%alex Wusir%%%%%
#\t 補充到8位(包含alex) #\t 補充到8位(包含alex,從alex向左數8位) s = 'alex\tsir' s6 = s.expandtabs() print(s6) #alex sir

str常見的操作方法

? ? len

s = 'alex Wusir' l = len(s) print(l) #10 10個元素,代表10個字符
判斷字符串以什么開頭
s7 = s.startswith('alex') print(s7) #True s8 = s.startswith('e',2,5) #True 索引切片2-5 print(s8)# True find 通過元素找索引,找到返回下標,找不到返回-1 s = 'alex Wusir' s9 = s.find('a',0,4) print(s9) # 0 s91 = s.find('l') print(s91) #1 s92 = s.find('y') print(s92) #-1 index 通過元素找索引,找不到返回報錯 s10 =s.index('a') print(s10) #0 strip 默認刪除前后空格,加上chars,從首尾同時開始刪除,遇到阻礙就不在進行 s = ' @a@lex%Wusir@ ' s11= s.strip() print(s11) #@a@lex%Wusir@ s12 =s.strip('%@ ') print(s12) #@alex%Wusir@ s13=s.lstrip() #只刪左邊的 print(s13) s14=s.rstrip() #只刪右邊的 print(s14)# @a@lex%Wusir@ str = ' a@lex%Wusir@ ' str1 =str.strip('%@ ') print(str1) #a@lex%Wusir count 計算字符出現了幾次 st = 'aa2234fdssf' st1 = st.count('a') print(st1) #2 split 以符號分割文本,默認是空格分割 S.split(sep=None, maxsplit=-1) -> list of strings str -->> list s = 'alex wusir zy' l = s.split() print(l) #['alex', 'wusir', 'zy'] s1 = 'alex:wusir:zy' l1 = s1.split(':') print(l1) #['alex', 'wusir', 'zy'] #ps:一分為二 s2 = ':alex:wusir:zy' l2 =s2.split(':') print(l2) #['', 'alex', 'wusir', 'zy'] format的三種玩法 格式化輸出 {}為占位 s ='我叫{} 今年{} 喜歡{},再說一下我叫{}'.format('zy',18,'coding','zy') #有幾個占位符就要寫幾個,和%s占位差不多 s ='我叫{0} 今年{1} 喜歡{2},再說一下我叫{0}'.format('zy',18,'coding','zy') #我叫zy 今年18 喜歡coding,再說一下我叫zy s ='我叫{name} 今年{age} 喜歡{hobby},再說一下我叫{name}'.format(name = 'zy',age = 18,hobby = 'coding') #我叫zy 今年18 喜歡coding,再說一下我叫zy
print(s) #我叫zy 今年18 喜歡coding,再說一下我叫zy ? replce # S.replace(old, new[, count]) -> str s = 'sadaafdslfkds' s1 = s.replace('a','b') #默認全部替換 print(s1) #sbdbbfdslfkds s2 = s.replace('a','b',1) #只替換一次 print(s2) #sbdaafdslfkds is系列 判斷 s= 'sadg112' s1=s.isalnum() #字母或數字 print(s1) #True s2=s.isalpha() #字母 print(s2)#False for循環 s = 'asdfggs' #循環輸出字符串里面的元素 for i in s:print(i)if 'a' in s:print('您輸出的詞語有敏感詞匯')for i in (18,11,22):print(i) #18 11 22

?相關練習題

使用while或for循環打印出字符串的每個元素 s = 'asdfer'index =0while 1:print(s[index])index += 1if index == len(s):break

?

實現一個整數加法計算器 如:content = input('請輸入內容:') #如用戶輸入:5+9或5+ 9或者5 + 9,然受進行分割進行計算1) content = input('請輸入內容:').strip() content1 = content.split('+') sum =0 index=0 for i in content1:con1=int(content1[index])sum = sum+con1index+=1 print(sum)2) sum =0 content = input('請輸入內容:').strip() content1 = content.split('+') for i in content1:sum = sum+int(i) print(sum)

?

任意輸入一串數字+文字 統計出來數字的個數a= 'sdafg1123222' print(a.count('1'))1) num =0 a = input('<<<') for i in a:if int(i) in [0,1,2,3,4,5,6,7,8,9]:print(i.count(i),type(i))num+=int(i.count(i)) print(num)2) for 循環遍歷每一個元素 count =0 a = '4451232assa' for i in a:if i.isdigit():count+=1 print(count)

?



轉載于:https://www.cnblogs.com/hanfe1/p/10202635.html

總結

以上是生活随笔為你收集整理的python之路day03--数据类型分析,转换,索引切片,str常用操作方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。