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

歡迎訪問 生活随笔!

生活随笔

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

python

python判断字符串在元祖_Python基础(2)——字典、元祖、字符串方法、非空即真、文件...

發布時間:2023/12/3 python 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python判断字符串在元祖_Python基础(2)——字典、元祖、字符串方法、非空即真、文件... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄:

一、字典

二、元祖

三、字符串方法、切片

四、非空即真,非0即真

五、文件

正文

一、字典

字典

d = {

'username':'xiaohei',

'id':1,

'grand':'天馬座',

'addr':'北京',

'age':29

}

1、增加

d ={'username':'xiaohei','id':1,'grand':'天馬座','addr':'北京','age':29}

#增:2個方法

d['money'] = 500d.setdefault('car','bmw')

print(d)

d['username'] = 123#重復key,value覆蓋

d.setdefault('grand','bmw')#存在key,value無效

print(d)

2、查詢

d ={'username':'xiaohei','id':1,'grand':'天馬座','addr':'北京','age':29}#取值:2個方法

print(d['addr'])print(d.get('username'))print(d)#print(d['addrs']) #不存在的key報錯

print(d.get('usernames')) #不存在的key返回None

print(d.get('sex','男')) #get取不存在的key返回默認值

3、刪除

#刪除

print(d)

d.pop('username')del d['addr']print(d)

4、其他方法

1)取出字典所有key到一個list中

取出字典所有values到一個list中

print(d.keys())#取出字典所有key到一個list中

print(d.values())#取出字典所有values到一個list中

2)向字典里更新值

d ={'username':'xiaohei','id':1,'grand':'天馬座','addr':'北京','age':29}

d.update(a=1,b=2)#向字典里更新值

print(d)

3)清空clear()

d.clear()#清空

print(d)

4)判斷key是否存在

users ={'fd':'123456','xzh':'45678'}

username= 'fd'

#判斷key是否存在

print(username inusers.keys())print(username in users) #判斷key是否存在,比keys()少一步轉成list#users.has_key(username)#python2

5)取key和value值

#直接取到key和value

print("轉成二維數組后取")print(d.items()) #轉成二維數組

for k,v ind.items():print(k,v)print("")print("根據key取:")#性能好

for k ind:print(k,d.get(k))

練習:錄入學生

users ={'fd':'1234','lhy':'456'}for i in range(3):

username= input('username:').strip()

password= input('password:').strip()

cpwd=input('cpwd:').strip()if username=='' or password=='' or cpwd=='':print("不能為空")elif password!=cpwd:print("兩次輸入不一致")else:

users[username]=passwordprint("注冊成功")print(users)break

else:print('輸入錯誤次數過多')

5、list字典嵌套

info ={'lgy':{'age':18,'addr':'beijing','car':['bmw','ben-z','audi'],

},'fd':{'house':{'bj':['海淀區','昌平區','朝陽區','西城區'],'sh':['靜安區','閘北區']

},'money':5000}

}

#lgy買了一輛五菱宏光

#fd賣了北京昌平的房子錢增加了400 0000

info['lgy']['car'].append("五菱宏光")

info['fd']['house']['bj'].remove('昌平區')

info['fd']['money']+=4000000

print(info)

#fd在重慶江北區買了房子

#info['fd']['house']['cq']=['江北區']#info['fd']['house'].update(cq=['江北區'])

info['fd']['house'].setdefault('cq',['江北區'])print(info)

{'lgy': {'age': 18, 'addr': 'beijing', 'car': ['bmw', 'ben-z', 'audi', '五菱宏光']}, 'fd': {'house': {'bj': ['海淀區', '朝陽區', '西城區'], 'sh': ['靜安區', '閘北區'], 'cq': ['江北區']}, 'money': 4005000}}

二、元祖

l = (1,2,3,4,5)

元祖是不可變的列表

元祖一旦被創建,不能改變里面的值

只有2個方法

li = ('118.24.3.40','root','123456','3306')#只有2個方法

print(li.index('root'))print(li.count('root'))

備注:只有一個元素的元祖要加逗號

t = ('abc') #只有一個元素不是元祖

m = ('abc',) #只有一個元素的元祖加逗號

print(t,type(t))print(m,type(m))

三、字符串

1、index

find

s = 'abca'

#s.index() 找字符串下標(找不到會報錯)#s.find() (找不到返回-1)

print("找字符串下標")print(s.index('a'))print(s.find('a'))print(s.index('a',2)) #從第二個開始找,

print(s.index('a',0,10)) #找前10個,

print(s.find('a',2))

2、s.strip() 去空格

#s.strip() 去空格

print("去空格、換行符或指定字符串")

s= 'abca,'

print(s.strip())print(s.rstrip()) #去右邊空格

print(s.lstrip())#去左邊空格

print(s.strip(','))

s= 'abcad你好\n'

print(s)print(s.strip()) #去換行符

print(s)

3、s.replace()替換

print("替換replace")

s= 'abcasffsfds'

print(s.replace('a','A'))#把小a用大A代替

#敏感詞打碼

word_list= ['傻逼','傻b','煞比','sb']

content= input("請輸入")for word inword_list:

content= content.replace(word,'**')print(content)

4、lower() upper()? 大寫、小寫轉換

s = 'ABCabc'

print(s.lower())print(s.upper())

5、zfill()? 補0

#s.zfill() 補0

s='1'

if len(s)<3:if len(s)==1:

s='00'+selif len(s)==2:

s='0'+selse:

s='0'

print(s)print(s.zfill(5))

6、

# s.isdigit() 判斷是否輸入為純數字,自然數

# s.endswith() 以...結尾

# s.startswith()以...開頭

s='1.23'

print(s.isdigit())print(s.endswith('.py'))print(s.startswith('1.'))

7、center() 使用字符使內容居中

#s.center()

print('歡迎登陸'.center(50,'1')) #用1字符湊夠50個字符,輸入內容居中

8、title() 將字符串變每個單詞首字母大寫

print('my car'.title())

9、isspace()? ?判斷輸入的字符串中是全是空格

#s.isspace()

print(' '.isspace())#判斷輸入的字符串中是全是空格

10、?s.isupper() s.islower()? 判斷是否全為大寫/小寫

#s.isupper() 判斷是否全為大寫#s.islower() 判斷是否全為小寫

print('my car'.islower())

11、capitalize() 首字母大寫

#capitalize()

print('my car'.capitalize()) #首字母大寫

12、s.split()分割字符串

入參空默認按著空格和換行符分割字符串

s='''aa

bb

cc

dd'''

print(s.split())

s= 'aaa,bbb,ccc,ddd'

print(s.split(','))print(s.split('z')) #沒有該分割符,則把所有字符串放到一個list中

13、s.join() 連接list里的每個元素的

l = ['aa','bb','cc','dd']

s=' '.join(l)print(l)print(type(l)) #將原來的list變為字符串

14、切片

切片是list范圍取值的一種方式

importstringprint(string.ascii_lowercase) #所有小寫

print(string.ascii_uppercase)print(string.digits) #所有數字

print(string.ascii_letters) #所有字母

print(string.punctuation) #所有符號

list切片

l=['a','b','c','d','e','f','g','h','i']print(l[0:2])#切片,從0開始到第二個2結束 顧頭不顧尾

print(l[2:])#從第二個開始到末尾

print(l[:3])#取到前3個

print(l[:])#取所有元素

print(l[0:9:2])#第三個參數:步長 0,0+2,2+2,4+2,6+2#l=['a','b','c','d','e','f','g','h','i']#0 1 2 3 4 5 6 7 8

步長為負數

print(l[::-1])#如果步長為負數,取值從右往左開始取,同時,開始和結束下標也要寫成負數#l=['a','b','c','d','e','f','g','h','i']#-9 -8 -7 -6 -5 -4 -2 -2 -1#i--f

print(l[-1:-4:-1])

字符串切片

s='abcdef'

print(s[::-1]) #只要有下標的都可以,包括list字符串元祖

15、list與循環語句

#print(list(range(1,5))) #[1, 2, 3, 4]

#0 1 2 3 4 5 6 7 8 9 10

l = [0, 1, 2, 2, 3, 4, 5, 6, 7, 8, 9]for i inl:if i%2 ==0:

l.remove(i)print(l) #循環刪除會導致下標錯亂[1, 2, 3, 5, 7, 9]

#修改為

l = [0, 1, 2, 2, 3, 4, 5, 6, 7, 8, 9]

l2=[0, 1, 2, 2, 3, 4, 5, 6, 7, 8, 9]for i inl2:if i%2 ==0:

l.remove(i)print(l)

為什么不能直接給l2賦值l

#淺拷貝/深拷貝

l = [0, 1, 2, 2, 3, 4, 5, 6, 7, 8, 9]

l2=l#淺拷貝

print(id(l))print(id(l2))#/深拷貝

importcopy

l= [0, 1, 2, 2, 3, 4, 5, 6, 7, 8, 9]

l2=copy.deepcopy(l)print(id(l))print(id(l2))

#以下雖然內存地址不是同一個但也是淺拷貝

l = [1,2,3,[1,2,3]]

l3=l.copy() #嵌套的也會隨l改變而變化

l4=copy.copy(l)

l5=l[:]

l[-1].append('abc')print(l)print(l3)print(l4)print(l5)

四、非空即真 非0即真

#非空即真,非0即真

#None {} () [] ''

username=input("username:")

password=input('password:')if username.strip(): #不為空 if not username.strip(): #為空

print('你輸入的不為空')else:print('username不能為空')

d={'a':1}ifd:print("真,d不為空")

五、文件

1、只讀

f = open('a.txt','r') #三種模式 w r a(附加模式) 默認讀模式#f = open('a.txt','r',encoding='utf-8') #有中文

result = f.read() #字符串

print(result)

f.close()

2、文件中有中文

f.readlines()、f.readline()

f = open('a.txt','r',encoding='utf-8') #有中文

result = f.readlines() #列表

f.seek(0)

result2= f.readline() #一行

print(result)print("result2:"+result2)

f.close()

3、只寫

#w只寫

f = open('a.txt','w',encoding='utf-8')

f.write('nihao') #只能是字符串

names =['\nfd','lhy','wq']

new_name='\n'.join(names)

f.writelines(new_name)#可以循環寫,只能是string類型

f.close()

#備注:#寫整數型需要轉化成字符型寫入

numbers=[1,2,3,4,5,6]for index inrange(len(numbers)):

numbers[index]=str(numbers[index])print(numbers)

4、附加模式

#附加模式

f = open('a.txt','a',encoding='utf-8')#result = f.read() 不能讀

names =['fd','lhy','wq']

f.writelines(names)

f.close()

5、讀寫

#r+ w+ a+ 三種模式#r+讀寫模式#r r+打開不存在的文件都會報錯

f = open('a.txt','r+',encoding='utf-8')

result=f.read()print(result)

names=['fd','lhy','wq']

f.writelines(names)print("readlines",f.readlines()) #有文件指針讀完后指針已經到最后,不能讀第二次

f.close()

6、a+

a+模式默認總最后附加寫,如何寫在文件開頭

方法1:先a+打開再w打開重新寫

#寫在開頭

f = open('a.txt','a+',encoding='utf-8')

f.seek(0)

result=f.read()

new_content= 'ksitou'+result

f.close()

f= open('a.txt','w',encoding='utf-8')

f.write(new_content)

f.close()

方法2

f.truncate()#清空文件內容

f = open('a.txt','a+',encoding='utf-8')

f.seek(0)

result=f.read()

f.seek(0)

new_result= result.upper()#將原文件內容改為大寫

f.truncate()#清空文件內容

f.write(new_result)

f.close()

#

總結

以上是生活随笔為你收集整理的python判断字符串在元祖_Python基础(2)——字典、元祖、字符串方法、非空即真、文件...的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 红桃成人在线 | 国产视频第一区 | 国产高潮国产高潮久久久91 | 美女看片 | 三级av网| 西野翔夫の目の前で犯在线 | 一级黄色在线 | 日韩操操操 | 久久超碰在线 | 亚洲我射av | 国产日本一区二区三区 | 337p粉嫩大胆色噜噜噜 | 欧美黑粗硬 | 午夜欧美在线 | 香蕉视频2020 | 久久蜜桃av | 少妇又色又紧又黄又刺激免费 | 91亚洲国产成人精品一区二三 | 日本在线免费看 | 蜜臀久久精品久久久久 | 亚洲第一伊人 | 一级黄色特级片 | 毛片视频在线免费观看 | 成人欧美一区二区三区黑人免费 | 中文字幕在线一区二区三区 | 极品熟妇大蝴蝶20p 国产偷自拍视频 | 色妞www精品视频 | 精品人妻少妇一区二区三区 | 男同激情视频 | 中文字幕精品无 | 亚洲国产精彩中文乱码av | 综合激情网 | 亚洲蜜桃精久久久久久久久久久久 | 午夜播放 | 少妇人妻偷人精品一区二区 | 日本一级免费视频 | 中文久久乱码一区二区 | 小妹色播 | 国产精品自慰网站 | 成人av免费在线 | 日本不卡一二三 | 国产高清自拍av | 天堂欧美 | 超碰2022 | 日本人妖在线 | 国产精品无码永久免费不卡 | 免费处女在线破视频 | 日韩有码在线视频 | 一级黄色录相 | 久久久97 | 一区二区三区黄色录像 | 欧美大尺度做爰啪啪床戏明星 | 中文字幕一区二区三区四区免费看 | 网红av在线 | 成年人小视频在线观看 | 亚洲精品二区三区 | 国模私拍在线观看 | 成年人视频在线观看免费 | 亚洲欧美色视频 | 人人妻人人澡人人爽精品日本 | 日韩国产精品一区二区三区 | 成人影| 人人干狠狠干 | 欧美91精品久久久久国产性生爱 | 无码人妻丰满熟妇奶水区码 | 色97色 | 99成人在线 | 91丨九色丨蝌蚪丨对白 | www.午夜视频 | 国产精品99在线观看 | 日韩在线综合 | 国产一区二区在线观看免费 | 伊人精品在线视频 | 东北少妇不戴套对白第一次 | 不卡视频国产 | 在线观看国产成人 | 乱子伦一区二区 | 精品一区二三区 | 久久久精品一区二区三区 | 午夜av成人 | 亚洲国产综合视频 | 日本a免费| 亚洲精品久久久久久久久 | 国产在线一区二区三区四区 | 日本免费无人高清 | 色在线免费观看 | 国产人妖视频 | 日少妇b | 欧美黄色性视频 | juliaann精品艳妇hd | 午夜成年视频 | 免播放器在线视频 | 亚洲人成电影在线播放 | 打开免费观看视频在线 | 日韩精品在线免费 | 日本精品免费视频 | 吸咬奶头狂揉60分钟视频 | 免费黄视频网站 | 在线观看av资源 |