3.20学习内容,字符串与列表
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                3.20学习内容,字符串与列表
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.                        
                                一、字符串類型:
作用:名字,性別,國籍,地址等描述信息
定義:在單引號(hào)\雙引號(hào)\三引號(hào)內(nèi),由一串字符組成。
需要掌握的方法:
1、strip 去除指定字符lstrip 去除左邊指定字符
rstrip 去除右邊指定字符
print('**sss****'.lstrip('*'))
print('**sss****'.rstrip('*'))
2、lower 所有字符全部小寫
upper 所有字符全部大寫
print('Egon'.lower())
print('egon'.upper())
3、startswith 檢查是否以某字符開頭
endswith 檢查是否以某字符結(jié)尾
print('alex is sb'.startswith('alex'))
print('alex is sb'.endswith('sb'))
4、format的三種玩法 關(guān)鍵字參數(shù)可以代替格式化里的%s
第一種:{}
s1='my name is %s my age is %s' %('egon',18)
s2='my name is {} my age is {}'.format('egon',18)
s2='my name is {} my age is {}'.format('egon',18,19)
第二種
s2='my name is {0} my age is {1} {1} {1} {0} {1}'.format('egon',18,19)
print(s2)
第三種
s2='my name is {name} my age is {age}'.format(age=18,name='egon')
print(s2)
5、split 以指定字符字符切割為列表
rsplit 從右邊以指定字符切割
cmd='get|C:\a.txt|3333'
print(cmd.split('|',1))
print(cmd.rsplit('|',1))
6、join 使用指定字符將列表內(nèi)的字符連接成一個(gè)字符串
cmd='egon:123:admin:rwx'
l=cmd.split(':')
res=''.join(l)
res=':'.join(l)
注意:':'.join([1,2,3]) # join方法傳入的列表必須只包含str類型的元素
7、replace 替換:將指定字符替換成另一個(gè)字符
msg='wupeiqi say my name is wupeiqi'
print(msg.replace('wupeiqi','SB'))
print(msg.replace('wupeiqi','SB',1))
8、isdigit 判斷是否為數(shù)字類型
print('10'.isdigit())
示例:
age=10
inp=input('>>: ').strip()
if inp.isdigit():
inp=int(inp)
if inp > age:
print('too big')
else:
print('輸入數(shù)據(jù)非法')
其他操作(了解即可)
1、find 查詢指定字符
rfind 從右查詢指定咨詢
index 檢測字符串中是否包含子字符串 str
rindex 從右檢測字符串中是否包含子字符串 str
count 用于統(tǒng)計(jì)字符串里某個(gè)字符出現(xiàn)的次數(shù)。可選參數(shù)為在字符串搜索的開始與結(jié)束位置。
msg='my egon hegon 123'
print(msg.find('sb'))
print(msg.find('egon'))
print(msg.find('egon',8,20))
print(msg.rfind('egon'))
print(msg.index('sb'))
print(msg.index('egon'))
2、center 返回一個(gè)原字符串居中,并使用空格填充至長度 width 的新字符串。默認(rèn)填充字符為空格。
ljust 返回一個(gè)原字符串左對(duì)齊,并使用空格填充至指定長度的新字符串。如果指定的長度小于原字符串的長度則返回原字符串。
rjust 返回一個(gè)原字符串右對(duì)齊,并使用空格填充至指定長度的新字符串。如果指定的長度小于原字符串的長度則返回原字符串。
zfill 返回指定長度的字符串,原字符串右對(duì)齊,前面填充0
print('========================egon=======================')
print('egon'.center(50,'*'))
print('egon'.ljust(50,'*'))
print('egon'.rjust(50,'*'))
print('egon'.zfill(50))
3、expandtabs 將字符串中的 tab 符號(hào)('\t')轉(zhuǎn)為空格,tab 符號(hào)('\t')默認(rèn)的空格數(shù)是 8。
msg='abc\tdef'
print(msg.expandtabs(3))
4、captalize 將字符串的第一個(gè)字母變成大寫,其他字母變小寫
swapcase 將字符串的大小寫字母進(jìn)行轉(zhuǎn)換
title() 返回"標(biāo)題化"的字符串,就是說所有單詞都是以大寫開始
print('abeCdEF'.capitalize())
print('abeCdEF'.swapcase())
print('my name is egon'.title())
5、is數(shù)字系列 總結(jié)最常用的是 .isdigit() 就足以滿足日常需求,如果有關(guān)錢的使用 .isnumeric() 命令。
num1=b'4' #bytes
num2=u'4' #unicode,python3中無需加u就是unicode
num3=u'肆' #中文數(shù)字
num4=u'Ⅳ' #羅馬數(shù)字
isdigit():bytes,unicode的阿拉伯?dāng)?shù)字
print(num1.isdigit())
print(num2.isdigit())
print(num3.isdigit())
print(num4.isdigit())
isdecimal():unicode的阿拉伯?dāng)?shù)字
print(num2.isdecimal())
print(num3.isdecimal())
print(num4.isdecimal())
isnumberic:unicode的阿拉伯?dāng)?shù)字\中文數(shù)字\羅馬數(shù)字
print(num2.isnumeric())
print(num3.isnumeric())
print(num4.isnumeric())
6、is其他
print('asdfasdfasdfaAsfd'.isalpha()) #字符全由字母組成
print('asdf'.isalnum()) #字符由字母或數(shù)字組成
print('I Am Egon'.isnumeric())
print(' '.isspace())
print('print'.isidentifier())
總結(jié)字符串類型:
1 存一個(gè)值
只能存一個(gè)值
2 有序or無序
有序
3 可變or不可變
!!!不可變:值變,id就變。不可變==可hash
列表類型
一:基本使用
1 用途:存放多個(gè)值
2 定義方式:[]內(nèi)以逗號(hào)為分隔多個(gè)元素,列表內(nèi)元素?zé)o類型限制
l=['a','b','c'] #l=list(['a','b','c'])
l1=list('hello')
print(l1)
3 常用操作+內(nèi)置的方法
優(yōu)先掌握的操作:
1、按索引存取值(正向存取+反向存取):即可改也可以取
l=['a','b','c']
print(id(l))
print(l[-1])
l[0]='A'
print(id(l))
print(l)
l[3]='d' # 報(bào)錯(cuò)
2、切片(顧頭不顧尾,步長)
stus=['alex','egon','wxx','yxx','lxx']
print(stus[1:3])
3、長度
stus=['alex','egon','wxx','yxx','lxx']
print(len(stus))
4、成員運(yùn)算in和not in
stus=['alex','egon','wxx','yxx','lxx']
print('alex' in stus)
5、追加
stus=['alex','egon','wxx','yxx','lxx']
stus.append('wupei')
stus.append('peiqi')
print(stus)
插入
stus=['alex','egon','wxx','yxx','lxx']
stus.insert(1,'艾利克斯')
print(stus)
6、刪除
stus=['alex','egon','wxx','yxx','lxx']
del stus[1]
print(stus)
stus.remove('alex')
print(stus)
stus.pop(1)
stus.pop() # 默認(rèn)刪除末尾
print(stus)
res1=stus.remove('alex') # 單純的刪除
print(res1)
res2=stus.pop(0) # 取走一個(gè)值
print(res2)
7、循環(huán)
stus=['alex','egon','wxx','yxx','lxx']
依賴索引
i=0
while i < len(stus):
print(stus[i])
i+=1
for i in range(len(stus)):
print(i,stus[i])
不依賴索引
for item in stus:
print(item)
補(bǔ)充for循環(huán)
for i in range(0,5,2): #0 2 4
print(i)
for i in range(10):#默認(rèn)從零起始
print(i)
for i in range(10,-2,-1):
print(i)
需要掌握的操作
stus=['alex','egon','alex','wxx','yxx','lxx']
print(len(stus)) # stus.__len__()
print(stus.count('alex'))
stus.extend(['a','b','c'])
print(stus)
stus.append(['a','b','c'])
print(stus)
print(stus.index('alex',1,5))
stus.reverse()
print(stus)
l=[1,10,3,12]
l.sort(reverse=True)
print(l)
大前提:只能同類型直接比較大小,對(duì)于有索引值直接的比較是按照位置一一對(duì)應(yīng)進(jìn)行比較的
s1='hello'
s2='hf'
print(s1 > s2)
l1=[3,'a','b','c']
l2=['xxx','d']
print(l1 > l2)
英文單詞大小定義:
print('Z' > 'a')
A-Za-z
print('a' > 'B')
?
轉(zhuǎn)載于:https://www.cnblogs.com/yangwei666/p/8611404.html
總結(jié)
以上是生活随笔為你收集整理的3.20学习内容,字符串与列表的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 知物由学 | 干货!一文了解安卓APP逆
- 下一篇: Avalonia Beta 1对WPF做
