1. 程式人生 > >我的python之路4

我的python之路4

---恢復內容開始---

#字串中是否只包含字母 數字
text='123LLna'
v=text.isalnum()
print(v)

輸出

True
#判斷text是否是字元 漢字
text="流水zhongshneg"
text1="流水"
text2="zhongshneg"
v=text.isalpha()
v1=text.isalpha()
v2=text.isalpha()
print(v,v1,v2)

輸出

True True True

iddecimal ,isdigit,isnumeric 判斷當前輸入的值,是否是數字

test = "
" #這種特殊的數字 v1 = test.isdecimal() #判斷是否是數字 v2 = test.isdigit() #判斷是否是數字,還可以判斷特殊的數字! 4 print(v1,v2) print(v1,v2)

輸出

False True

isnumeric

test = "" # 1,② 更厲害!!
v3 = test.isnumeric()
print(v3)

輸出

True
#大小寫轉換
text="aLex"
v=text.swapcase()
print(v)

輸出

AlEX
#
字母 數字 下劃線 識別符號 def class a="def" v=a.isidentifier() print(v)

輸出

True
#是否存在不可顯示的字元 \t製表符 \n換行符
text="liushui\t"
v=text.isprintable()
print(v)

輸出

False
#判斷是否全部是空格
text="    as    "
text1=" "
v=text.isspace()
v1=text1.isspace()
print(v,v1)

輸出

False True
#判斷是否為標題(首字母大寫)
text="Return True if all" text1="Reture True" v=text.istitle() v1=text1.istitle() print(v,v1) #轉換為標題 v2=text.title() print(v2)

輸出

False True
Return True If All
#非常重要!!!將字串中的每一個元素按照指定的分隔符進行拼接
text="流水眾生"
print(text)
t=" "
t1="hao"
v=t.join(text)
v1=t1.join(text)
print(v)
print(v1)

輸出

流水眾生
流 水 眾 生
流hao水hao眾hao生
#設定寬度,並將內容居中 20代指總長度
# *空白填充,一個字元可有可無
text="流水眾生"
v=text.center(20,"")
print(v)
#填充右面
v1=text.ljust(20,"*")
print(v1)
#填充左面
v2=text.rjust(20,"*")
print(v2)

輸出

好好好好好好好好流水眾生好好好好好好好好
流水眾生****************
****************流水眾生
#長度為5,不夠5就在前面加0
text="流水眾生"
v=text.zfill(5)
print(v)

輸出

0流水眾生

 

#判斷小寫,使小寫
text="ALex"
v1=text.islower()
v2=text.lower()
print(v1,v2)

輸出

False alex
#判斷大寫,使大寫
text="ALex"
v1=text.isupper()
v2=text.upper()
print(v1,v2)
False ALEX
#移除指定字串,原字串與指定字串匹配
text="xa"
v1=text.lstrip('xa')#從左開始
v2=text.rstrip('xa')#從右開始
v3=text.strip('91exxeexa')#兩邊
print(v1)
print(v2)
print(v3)

輸出

(空)

#去空白
text="  流水眾生  "
v1=text.lstrip()#去左邊
v2=text.rstrip()#去右面
v3=text.strip()#去兩邊
print(v1)
print(v2)
print(v3)

輸出

流水眾生  
  流水眾生
流水眾生
#去\t去\n
text="\t流水眾生\n  "
v1=text.lstrip()#去左邊
v2=text.rstrip()#去右面
v3=text.strip()#去兩邊
print(v1)

輸出

流水眾生
  
    流水眾生
流水眾生
#替換
v="aeiou"
m=str.maketrans("aeiou","12345")
new_m=v.translate(m)
print(new_m)

輸出

12345
#分隔
test="testasdaddfg"
v=test.partition('s')
print(v)
v1=test.rpartition('s')
print(v1)
v2=test.split('s')
print(v2)
v3=test.split('s',1)
print(v3)

輸出

('te', 's', 'tasdaddfg')
('testa', 's', 'daddfg')
['te', 'ta', 'daddfg']
['te', 'tasdaddfg']

正則表示式,是否想要分隔的元素

text="asdfadasdf\nasdfasf\naadf"
v=text.splitlines()
v1=text.splitlines(True)
v2=text.splitlines(False)
print(v)
print(v1)
print(v2)

輸出

['asdfadasdf', 'asdfasf', 'aadf']
['asdfadasdf\n', 'asdfasf\n', 'aadf']
['asdfadasdf', 'asdfasf', 'aadf']
#判斷字串是否以指定開頭  結尾
text="backend1.1.1"
v=text.startswith('a')
v1=text.endswith('a')
print(v)
print(v1)

輸出

False
False

6個基本的:

jion  split  find  strip  upper  lower

#索引下標獲取字串中的某個字元
text="alex"
v=text[0]
print(v)
#切片
v1=text[0:2]  #0<=  <2
print(v1)

輸出

a
al
#有多少個字元組成
text="alex"
v=len(text)
print(v)

輸出 4

#分隔
s="asklit;alksjdf"
v=s.split("k")
print(v)

輸出

['as', 'lit;al', 'sjdf']
li=[11,22,33,44,55,"asdf"]
v=len("asdf")
v1=len(li)
print(v)
print(v1)

輸出

4
6
text="流水眾生"
# index=0
# while index<len(text):
#     v=text[index]
#     print(v)
#     index+=1
# print('end')
for wo in text:
    print(wo)

輸出

流
水
眾
生
#字串一旦建立,不可修改。一旦修改或者拼接,都會造成重新生成字串
name="liushui"
age="18"
info=name+age
print(info)

輸出

liushui18
#替換
text="alexalexalex"
v=text.replace("ex",'bbb')
print(v)
v1=text.replace("ex",'bbb',2)
print(v1)
#替換
text="alexalexalex"
v=text.replace("ex",'bbb')
print(v)
v1=text.replace("ex",'bbb',2) #2為從左到右替換的個數
print(v1)

輸出

albbbalbbbalbbb
albbbalbbbalex
#break continue
text="流水眾生"
for item in text:
    print(item)
    break
for item1 in text:
    continue
    print(item1)

輸出



#建立連續的數字,通過設定步長來指定不連續
v=range(10)
print(v)
for item in v:
    print(item)
v1=range(0,10,2)
for item1 in v1:
    print(item1)

輸出

range(0, 10)
0
1
2
3
4
5
6
7
8
9
0
2
4
6
8
#建立連續的數字,通過設定步長來指定不連續
# v=range(10)
# print(v)
# for item in v:
#     print(item)
# v1=range(0,10,2)
# for item1 in v1:
#     print(item1)

#將文字對應的索引打印出來

#簡寫
text=input(">>>")
for item in range(0,len(text)):
    print(item,text[item])

輸出

>>>qwe
0 q
1 w
2 e

str 類

name="alex" 建立的物件

list 類,列表

li=[1,12,9,"age","alex“]

通過list類建立的物件,li中括號括起來,逗號分隔每個元素列表中的元素。元素可以是數字,字串,列表,布林值。。。所有的都能放

li=[1,12,9,"liu",["流水",["19",10],"終生"],"alex",True]
print(li[0])
print(li[2])

輸出

1
9

切片

li=[1,12,9,"liu",["流水",["19",10],"終生"],"alex",True]
print(li[3:5])  #3<=  <5
print(li[3:-1]) #3<=  <-1

輸出

['liu', ['流水', ['19', 10], '終生']]
['liu', ['流水', ['19', 10], '終生'], 'alex']

for迴圈 while迴圈

li=[1,12,9,"liu",["流水",["19",10],"終生"],"alex",True]
for item in li:
    print(item)

輸出

1
12
9
liu
['流水', ['19', 10], '終生']
alex
True
#(索引 切片)列表元素可以被修改,刪除
li=[1,12,9,"liu",["流水",["19",10],"終生"],"alex",True]
li[1]=120
print(li)
del li[1]
print(li)

輸出

[1, 120, 9, 'liu', ['流水', ['19', 10], '終生'], 'alex', True]
[1, 9, 'liu', ['流水', ['19', 10], '終生'], 'alex', True]
#判斷某一元素是否在列表中
li=[1,12,9,"liu",["流水",["19",10],"終生"],"alex",True]
v=12 in li
print(v)

輸出

True
#索引
li=[1,12,9,"liu",["流水",["19",10],"終生"],"alex",True]
v=li[4][1][0][1]
print(v)

輸出

9

#型別轉換
s="poukakd"
a="123"
int(a)
print(a)
str(a)
print(a)
new_li=list(s)
print(new_li)

輸出

123
123
['p', 'o', 'u', 'k', 'a', 'k', 'd']
#數字不可以迴圈,不可以轉換成列表
s=123
for i in s:
    print(i)

輸出

TypeError: 'int' object is not iterable
s=123
new_li=list(s)
print(new_li)

輸出

TypeError: 'int' object is not iterable
#字串交換列表
s="asdfs"
new_li=list(s)
print(new_li)

輸出

['a', 's', 'd', 'f', 's']
#數字與字串不能相加
s="123asd"
for i in s
    s=s+i
    print(s)

輸出

SyntaxError: invalid syntax
#列表轉換字串(有數字又有字串),需要自己寫for迴圈 一個一個處理,
li=[11,22,33,"123","alex"]
s=" "
for i in li:
    s=s+str(i)
print(s)

輸出

 112233123alex
#只有字串時
li=["123","alex"]
v="".join(li)
print(v)

輸出

123alex

list  類

list  類的一個物件 li=[11,22,33,44]

#原值後面追加
li=[11,22,33,44]
v=li.append(5)
print(li)
li.append("alex")
li.append([1234,12])
print(li)

輸出

[11, 22, 33, 44, 5]
[11, 22, 33, 44, 5, 'alex', [1234, 12]]
#清空列表
li=[11,22,33,44]
li.clear()
print(li)

輸出

[]
#拷貝,淺拷貝
li=[11,22,33,44]
v=li.copy()
print(v)

輸出

[11, 22, 33, 44]
#計算元素出現的次數
li=[11,22,33,44]
v=li.count(22)
print(v)

輸出  1

#擴充套件原列表
li=[11,22,33,44]
li.extend([9898,"不得了"])
print(li)

輸出

[11, 22, 33, 44, 9898, '不得了']
#擴充套件原列表
li=[11,22,33,44]
li.append([9898,"不得了"])
print(li)

輸出

[11, 22, 33, 44, [9898, '不得了']]
#擴充套件原列表
li=[11,22,33,44]
li.extend("不得了")
print(li)

輸出

[11, 22, 33, 44, '', '', '']
#根據值獲取當前索引位置(左邊優先)
li=[11,22,33,22,44]
v=li.index(22)
print(v)

輸出  1

#在指定位置插入元素
li=[11,22,33,22,44]
li.insert(0,99)
print(li)

輸出

[99, 11, 22, 33, 22, 44]
#刪除某個值,並獲取刪除的值(無指定索引時,預設最後一個)
li=[11,22,33,22,44]
v=li.pop(1)
print(v)
print(li)

輸出

22
[11, 33, 22, 44]
#刪除某個值,並獲取刪除的值(無指定索引時,預設最後一個)
li=[11,22,33,22,44]
v=li.pop()
print(v)
print(li)

輸出

44
[11, 22, 33, 22]
#刪除列表中的指定的值,左面優先
li=[11,22,33,22,44]
li.remove(22)
print(li)

輸出

[11, 33, 22, 44]

ps:pop  remove  del.li[0]  del.li[1:9]  clear

#當前列表進行翻轉
li=[11,22,33,22,44]
li.reverse()
print(li)

輸出

[44, 22, 33, 22, 11]
#列表的排序
li=[11,22,33,22,44]
li.sort() #從小到大排序
print(li)
li.sort(reverse= True)#從大到小排序
print(li)

輸出

[11, 22, 22, 33, 44]
[44, 33, 22, 22, 11]

sorted  cmd  key 後面講

# 列表中元素修改  取值  數字
li=[11,22,33,22,44]
v=li[0]
print(v)
li[0]=999
print(li)

輸出

11
[999, 22, 33, 22, 44]
# 列表中元素修改  取值  字串

li=[11,22,33,44] v=li[3] print(v) li[3]="w" print(li)

輸出

44
[11, 22, 33, 'w']