小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

2 數(shù)據(jù)類型

 頭號(hào)碼甲 2022-12-13 發(fā)布于北京

1 模塊

import,先從當(dāng)前目錄找,然后sys.path查看標(biāo)準(zhǔn)庫(kù)和第三方庫(kù)。

1.1 sys

sys_mod.py

import sys
#print(sys.path)        # 打印環(huán)境變量
print(sys.argv)         # 打印相對(duì)路徑(pycharm顯示絕對(duì)路徑)
print(sys.argv[2])      # 打印索引為2的參數(shù)

cmd內(nèi)sys_mod.py上級(jí)目錄執(zhí)行:python sys_mod.py 1 2 3

'F:\python\lib\site-packages'

F:\python\Lib

1.2 os 文件/目錄方法

os 模塊提供了非常豐富的方法用來(lái)處理文件和目錄

import os
#cmd_res = os.system("dir") #執(zhí)行命令,不保存結(jié)果
?
# popen()可保存結(jié)果,需調(diào)用read()
cmd_res = os.popen("dir").read()    #read()調(diào)用內(nèi)存結(jié)果,不加則只顯示內(nèi)存對(duì)象地址
print("-->",cmd_res)
?
os.mkdir("new_dir") #創(chuàng)建文件夾

 

創(chuàng)建模塊

login.py

_username = 'arfu'
_password = '123456'
username = input("username: ")
#password = getpass.getpass("password:")
password = input("password: ")
?
if _username == username and _password == password:
    print("Welcome user {name} login...".format(name=username))
else:
    print("Invalid username or password!")

  

xxx.py

import login

login.py作為模塊,可以是當(dāng)前文件,或標(biāo)準(zhǔn)庫(kù)或第三方庫(kù)

1.3 pyc

1. Python是一門解釋型語(yǔ)言?

我初學(xué)Python時(shí),聽到的關(guān)于Python的第一句話就是,Python是一門解釋性語(yǔ)言,我就這樣一直相信下去,直到發(fā)現(xiàn)了.pyc文件的存在。如果是解釋型語(yǔ)言,那么生成的.pyc文件是什么呢?c應(yīng)該是compiled的縮寫才對(duì)??!

為了防止其他學(xué)習(xí)Python的人也被這句話誤解,那么我們就在文中來(lái)澄清下這個(gè)問題,并且把一些基礎(chǔ)概念給理清。

 

2. 解釋型語(yǔ)言和編譯型語(yǔ)言

計(jì)算機(jī)是不能夠識(shí)別高級(jí)語(yǔ)言的,所以當(dāng)我們運(yùn)行一個(gè)高級(jí)語(yǔ)言程序的時(shí)候,就需要一個(gè)“翻譯機(jī)”來(lái)從事把高級(jí)語(yǔ)言轉(zhuǎn)變成計(jì)算機(jī)能讀懂的機(jī)器語(yǔ)言的過程。這個(gè)過程分成兩類,第一種是編譯,第二種是解釋。

編譯型語(yǔ)言在程序執(zhí)行之前,先會(huì)通過編譯器對(duì)程序執(zhí)行一個(gè)編譯的過程,把程序轉(zhuǎn)變成機(jī)器語(yǔ)言。運(yùn)行時(shí)就不需要翻譯,而直接執(zhí)行就可以了。最典型的例子就是C語(yǔ)言。

解釋型語(yǔ)言就沒有這個(gè)編譯的過程,而是在程序運(yùn)行的時(shí)候,通過解釋器對(duì)程序逐行作出解釋,然后直接運(yùn)行,最典型的例子是Ruby。

通過以上的例子,我們可以來(lái)總結(jié)一下解釋型語(yǔ)言和編譯型語(yǔ)言的優(yōu)缺點(diǎn),因?yàn)榫幾g型語(yǔ)言在程序運(yùn)行之前就已經(jīng)對(duì)程序做出了“翻譯”,所以在運(yùn)行時(shí)就少掉了“翻譯”的過程,所以效率比較高。但是我們也不能一概而論,一些解釋型語(yǔ)言也可以通過解釋器的優(yōu)化來(lái)在對(duì)程序做出翻譯時(shí)對(duì)整個(gè)程序做出優(yōu)化,從而在效率上超過編譯型語(yǔ)言。

此外,隨著Java等基于虛擬機(jī)的語(yǔ)言的興起,我們又不能把語(yǔ)言純粹地分成解釋型和編譯型這兩種。

用Java來(lái)舉例,Java首先是通過編譯器編譯成字節(jié)碼文件,然后在運(yùn)行時(shí)通過解釋器給解釋成機(jī)器文件。所以我們說(shuō)Java是一種先編譯后解釋的語(yǔ)言。

 

3. Python到底是什么

其實(shí)Python和Java/C#一樣,也是一門基于虛擬機(jī)的語(yǔ)言,我們先來(lái)從表面上簡(jiǎn)單地了解一下Python程序的運(yùn)行過程吧。

當(dāng)我們?cè)诿钚兄休斎雙ython hello.py時(shí),其實(shí)是激活了Python的“解釋器”,告訴“解釋器”:你要開始工作了??墒窃凇敖忉尅敝?,其實(shí)執(zhí)行的第一項(xiàng)工作和Java一樣,是編譯。

熟悉Java的同學(xué)可以想一下我們?cè)诿钚兄腥绾螆?zhí)行一個(gè)Java的程序:

javac hello.java

java hello

 

只是我們?cè)谟肊clipse之類的IDE時(shí),將這兩部給融合成了一部而已。其實(shí)Python也一樣,當(dāng)我們執(zhí)行python hello.py時(shí),他也一樣執(zhí)行了這么一個(gè)過程,所以我們應(yīng)該這樣來(lái)描述Python,Python是一門先編譯后解釋的語(yǔ)言。

4. 簡(jiǎn)述Python的運(yùn)行過程

在說(shuō)這個(gè)問題之前,我們先來(lái)說(shuō)兩個(gè)概念,PyCodeObject和pyc文件。

我們?cè)谟脖P上看到的pyc自然不必多說(shuō),而其實(shí)PyCodeObject則是Python編譯器真正編譯成的結(jié)果。我們先簡(jiǎn)單知道就可以了,繼續(xù)向下看。

當(dāng)python程序運(yùn)行時(shí),編譯的結(jié)果則是保存在位于內(nèi)存中的PyCodeObject中,當(dāng)Python程序運(yùn)行結(jié)束時(shí),Python解釋器則將PyCodeObject寫回到pyc文件中。

當(dāng)python程序第二次運(yùn)行時(shí),首先程序會(huì)在硬盤中尋找pyc文件,如果找到,則直接載入,否則就重復(fù)上面的過程。

所以我們應(yīng)該這樣來(lái)定位PyCodeObject和pyc文件,我們說(shuō)pyc文件其實(shí)是PyCodeObject的一種持久化保存方式

2數(shù)據(jù)類型

1、數(shù)字

2 是一個(gè)整數(shù)的例子。 長(zhǎng)整數(shù) 不過是大一些的整數(shù)。 3.23和52.3E-4是浮點(diǎn)數(shù)的例子。E標(biāo)記表示10的冪。在這里,52.3E-4表示52.3 * 10-4。 (-5+4j)和(2.3-4.6j)是復(fù)數(shù)的例子,其中-5,4為實(shí)數(shù),j為虛數(shù),數(shù)學(xué)中表示復(fù)數(shù)是什么?。

int(整型)

  在32位機(jī)器上,整數(shù)的位數(shù)為32位,取值范圍為-231~231-1,即-2147483648~2147483647   在64位系統(tǒng)上,整數(shù)的位數(shù)為64位,取值范圍為-263~263-1,即-9223372036854775808~9223372036854775807

long(長(zhǎng)整型)

  跟C語(yǔ)言不同,Python的長(zhǎng)整數(shù)沒有指定位寬,即:Python沒有限制長(zhǎng)整數(shù)數(shù)值的大小,但實(shí)際上由于機(jī)器內(nèi)存有限,我們使用的長(zhǎng)整數(shù)數(shù)值不可能無(wú)限大。   注意,自從Python2.2起,如果整數(shù)發(fā)生溢出,Python會(huì)自動(dòng)將整數(shù)數(shù)據(jù)轉(zhuǎn)換為長(zhǎng)整數(shù),所以如今在長(zhǎng)整數(shù)數(shù)據(jù)后面不加字母L也不會(huì)導(dǎo)致嚴(yán)重后果了。 float(浮點(diǎn)型)

先掃盲 http://www.cnblogs.com/alex3714/articles/5895848.html ** **  浮點(diǎn)數(shù)用來(lái)處理實(shí)數(shù),即帶有小數(shù)的數(shù)字。類似于C語(yǔ)言中的double類型,占8個(gè)字節(jié)(64位),其中52位表示底,11位表示指數(shù),剩下的一位表示符號(hào)。 complex(復(fù)數(shù))   復(fù)數(shù)由實(shí)數(shù)部分和虛數(shù)部分組成,一般形式為x+yj,其中的x是復(fù)數(shù)的實(shí)數(shù)部分,y是復(fù)數(shù)的虛數(shù)部分,這里的x和y都是實(shí)數(shù)。

注:Python中存在小數(shù)字池:-5 ~ 257

 

2、布爾值

  真或假

  1 或 0

a = 0
if a:print(a)
#為假不輸出
?
a = 1
if a:print(a)
#為真輸出1

  

3 三元運(yùn)算

result =` `值1if條件 else` `值2

如果條件為真:result = 值1 如果條件為假:result = 值2

a,b,c = 1,3,5
d = a if a >c else c
print(d)
?
# 結(jié)果為5
# 同:
>>> if a >b:d=a
... else:a=c
...
>>> a
1

 

4 bytes數(shù)據(jù)類型

 

 

msg = "你好,世界"
print(msg)
print(msg.encode(encoding="utf-8"))
print(msg.encode(encoding="utf-8").decode(encoding="utf-8"))

 

輸出結(jié)果:

你好,世界 b'\xe4\xbd\xa0\xe5\xa5\xbd\xef\xbc\x8c\xe4\xb8\x96\xe7\x95\x8c' 你好,世界

3 列表、元組、字典、集合、函數(shù)

 列表備注
創(chuàng)建 List_one = [] List_one = list()  
查詢 List_one[1:5:2] List_one[0]  
排序 List_one.sort() List_one.sort(key=len,reverse=True) List_two = sorted(List_one) List_one.reverse() Sort(reverse=True)降序 按字符串的長(zhǎng)度排序,降序 生成一個(gè)新列表 倒序排序
添加 List_1.append(10) List_1.extend(list_2) List_1.insert(1,’d’) Append(值) Extend(新列表) Insert(索引,’值’)
刪除 Del List_one[1] List_one.remove('e’) List_one.pop(1)  
修改 Names[1] = 'hello’  
嵌套 List_one = [[],[],[]]  

 

 

 

 元組 
創(chuàng)建 Tu_1 = () Tu_1 = tuple()  
查詢 Print(tu_1[1]) Print(tu_1[0:3:2])  

 

 字典 
創(chuàng)建 Dict_1 = {'姓名’:’張三’, '地址’:”大學(xué)路’} Dict_1 = dict(姓名=’李四’,地址=’大學(xué)路’) Dict()出現(xiàn)重復(fù)鍵報(bào)錯(cuò)
訪問 Print(Dict_1['’姓名])  
添加 Dict_1.update(姓名=’張三’) Dict_1['姓名’] = '王八’ 若鍵存在則修改
查詢 Dict_1.items() Dict_1.keys() Dict_1.values() 查詢所有元素
刪除 Dict_1.pop('姓名’) Dict_1.popitem() Dict_1.clear() 最后一位

 

 

 

 

 

 

 集合 
創(chuàng)建 Set_1 = set([1,2,3,5]) Set_1 = {'p’, 'y’, 't’, 'h’} Set_1 = frozenset((1,2,3,5)) 不可變集合
操作 Set_1.add('py’) Set_1.update('thon’)  
刪除 Set_1.remove('o’) Set_1.discard('t’) Set_1.pop() Set_1.clear()  
操作符 Set_1 = {'a’,’b’} set_2 = {'b’,’c’} Result = set_1 | set_2 Result = set_1 & set_2 Result = set_1 - set_2 Result = set_1 ^ set_2 | & - ^ 聯(lián)合 交集 差補(bǔ) 對(duì)稱差分

 

 函數(shù) 
  Def test():  
  Def test1(date,temp,air): Print(f’日期:{date}’) Print(f’溫度:{temp}’) Print(f’空氣狀況:{air}’)  
調(diào)用 Test() Test1('2020年’,’20度’,’優(yōu)’)  

3.1列表

列表方法

Python 有一組可以在列表上使用的內(nèi)建方法。

方法描述
append() 在列表的末尾添加一個(gè)元素
clear() 刪除列表中的所有元素
copy() 返回列表的副本
count() 返回具有指定值的元素?cái)?shù)量。
extend() 將列表元素(或任何可迭代的元素)添加到當(dāng)前列表的末尾
index() 返回具有指定值的第一個(gè)元素的索引
insert() 在指定位置添加元素
pop() 刪除指定位置的元素
remove() 刪除具有指定值的項(xiàng)目
reverse() 顛倒列表的順序
sort() 對(duì)列表進(jìn)行排序

代碼

names = ["A","B","C","D","E"]
?
#增
names.append("F")
names.insert(1,"G")
names.insert(3,"L")
names.insert(3,["word,hi"])
#改
names[2] = "GG"
print(names)
?
# print(names[0])
# print(names[1:3]) #切片
# print(names[:3]) #切片
# print(names[-3:]) #切片
# print(names[0:-1:2])
# print(names[::2])
?
#刪
# names.remove("GG")
# del names[1] # =names.pop(1)
names.pop() #默認(rèn)為最后一個(gè)
print(names)
?
#查找
print(names.index("E"))
print(names[names.index("E")])
?
#統(tǒng)計(jì)
print(names.count("G"))
?
#清除clear()
# names.clear()
# print(names)
?
#reverse()反轉(zhuǎn)
names.reverse()
print(names,"reverse()方法")
?
#排序 符號(hào)>數(shù)字>大寫字母>小寫字母
names2 = ["#A","2B","1C","D","aE"]
names2.sort()
print(names2)
?
# 合并
names.extend(names2)
del names2
print(names)

  

copy()

import copy
?
names = ["A","B","C",["word","hi"],"D","E"]
# names2 = names.copy() # 淺copy第一層,二層copy內(nèi)存地址
# names2 = copy.copy(names) # 同列表的copy(),淺copy
names2 = copy.deepcopy(names)
print(names)
print(names2)
?
names[2] = "你好"
names[3][0] = "WORD"
?
print(names)
print(names2)

  

淺copy:

['A', 'B', 'C', ['word', 'hi'], 'D', 'E'] ['A', 'B', 'C', ['word', 'hi'], 'D', 'E'] ['A', 'B', '你好', ['WORD', 'hi'], 'D', 'E'] ['A', 'B', 'C', ['WORD', 'hi'], 'D', 'E']

深copy:

['A', 'B', 'C', ['word', 'hi'], 'D', 'E'] ['A', 'B', 'C', ['word', 'hi'], 'D', 'E'] ['A', 'B', '你好', ['WORD', 'hi'], 'D', 'E'] ['A', 'B', 'C', ['word', 'hi'], 'D', 'E']

 

補(bǔ)充:淺copy,聯(lián)合賬號(hào)

import copy
?
person=['name',['saving',100]]
?
#淺copy方法
"""
p1=copy.copy(person)
p2=person[:]
p3=list(person)
"""
p1=person[:]
p2=person[:]
?
p1[0]='zhangsan'
p2[0]='lisi'
p1[1][1]=50
?
print(p1)
print(p2)

  

list()

制作副本的另一種方法是使用內(nèi)建的方法 list()。

實(shí)例

使用 list() 方法復(fù)制列表:

thislist = ["apple", "banana", "cherry"]
mylist = list(thislist)
print(mylist)

  

合并兩個(gè)列表:

list1 = ["a", "b" , "c"]
list2 = [1, 2, 3]
?
list3 = list1 + list2
print(list3)

  

補(bǔ)充:

names = ["A","B","C",["word","hi"],"D","E"]
print(names[0:-1:2])
print(names[::2])
for i in names:
    print(">>",i)
?
str = list(["1","2"])
str += "3"
str += [40]
print(str)
#['1', '2', '3', 40]

  

購(gòu)物程序

需求:

  1. 啟動(dòng)后,讓用戶輸入工資,然后打印商品列表

  2. 允許用戶根據(jù)商品編號(hào)購(gòu)買商品

  3. 用戶選擇商品后,檢測(cè)余額是否夠,夠就直接扣款,不夠則提醒

  4. 可隨時(shí)退出,退出時(shí),打印已購(gòu)買商品的余額

product_list = [
    ('Iphone',5800),
    ('Mac Pro',9800),
    ('Bike',8000),
    ('Watch',10600),
    ('Coffee',31),
    ('Ar fu',1),
]
shopping_list = []
salary = input("input your salary:")
if salary.isdigit():
    salary = int(salary)
    while True:
        for index,item in enumerate(product_list):  # 取出下標(biāo)
            # print(product_list.index(item),item)
            print(index,item)
        user_choice =input("選擇要買?>>>:")
        if user_choice.isdigit():
            user_choice = int(user_choice)
            if user_choice < len(product_list) and user_choice >=0:
                p_item = product_list[user_choice]
                if p_item[1] <= salary: #買的起
                    shopping_list.append(p_item)
                    salary -= p_item[1]
                    print("Added %s into shopping cart,your current balance is \033[31;1m%s\033[0m" %(p_item,salary))
                else:
                    print("\033[41;1m你的余額只剩[%s]啦,還買個(gè)毛線\033[0m")
            else:
                print("product code [%s] is not exist!"% user_choice)
        elif user_choice == 'q':
            print("----------shopping list---------")
            for p in shopping_list:
                print(p)
            print("Your current halance:",salary)
            exit()
        else:
            print("invalid option")

  

3.2元組

元組方法

Python 提供兩個(gè)可以在元組上使用的內(nèi)建方法。

方法描述
count() 返回元組中指定值出現(xiàn)的次數(shù)。
index() 在元組中搜索指定的值并返回它被找到的位置。

代碼

元組(Tuple)

元組是有序且不可更改的集合。在 Python 中,元組是用圓括號(hào)編寫的。

thistuple = ("apple", "banana", "cherry", "orange", "kiwi", "melon", "mango")
print(thistuple)
print(thistuple[1])
print(thistuple[-1])
print(thistuple[-4:-1])

  

把元組轉(zhuǎn)換為列表即可進(jìn)行更改:

x = ("apple", "banana", "cherry")
y = list(x)
y[1] = "kiwi"
x = tuple(y)
?
print(x)
#結(jié)果:('apple', 'kiwi', 'cherry')

  

單項(xiàng)元組,別忘了逗號(hào):

thistuple = ("apple",)
print(type(thistuple))
?
#不是元組
thistuple = ("apple")
print(type(thistuple))

  

合并這個(gè)元組:

tuple1 = ("a", "b" , "c")
tuple2 = (1, 2, 3)
?
tuple3 = tuple1 + tuple2
print(tuple3)

  

tuple() 構(gòu)造函數(shù)

也可以使用 tuple() 構(gòu)造函數(shù)來(lái)創(chuàng)建元組。

實(shí)例

使用 tuple() 方法來(lái)創(chuàng)建元組:

thistuple = tuple(("apple", "banana", "cherry")) # 請(qǐng)注意雙括號(hào)
print(thistuple)

  

3.3 字典

字典(Dictionary)

字典是一個(gè)無(wú)序、可變和有索引的集合。在 Python 中,字典用花括號(hào)編寫,擁有鍵和值。

字典方法

Python 提供一組可以在字典上使用的內(nèi)建方法。

方法描述
clear() 刪除字典中的所有元素
copy() 返回字典的副本
fromkeys() 返回?fù)碛兄付ㄦI和值的字典
get() 返回指定鍵的值
items() 返回包含每個(gè)鍵值對(duì)的元組的列表
keys() 返回包含字典鍵的列表
pop() 刪除擁有指定鍵的元素
popitem() 刪除最后插入的鍵值對(duì)
setdefault() 返回指定鍵的值。如果該鍵不存在,則插入具有指定值的鍵。
update() 使用指定的鍵值對(duì)字典進(jìn)行更新
values() 返回字典中所有值的列表

代碼

info = {
    '001':"zhang san",
    '002':"li si",
    '003':"wang wu",
}
print(info)
?
#查
print(info['001']) #找不到key會(huì)報(bào)錯(cuò)
print(info.get('005')) #找不到返回None
?
#改
info['001'] = "zhao liu" #修改
info['004'] = "qian qi" # 無(wú)則添加
?
#del
# del info['004']
info.pop("004")
info.popitem()
?
#判斷是否存在
print('001' in info) #info.has_key("001") in py2.x
print(info)

  

dict = {
    "一":{
        "桌子":["被子","盤子"],
        "車":["鏡子","油箱"]
    },
    "二":{
        "臥室":["床","被子","桌子"],
        "廳":["沙發(fā)","桌子","電視"]
    }
}
print(dict["一"]["桌子"])
dict["一"]["桌子"][1] += "dog"
print(dict["一"]["桌子"])
?
print(dict.keys())
?
print(dict.values())
?
dict.setdefault("三",{"www.baidu.com":[1,2]}) # 有key二,直接返回,沒有則添加后面的值
print(dict)

  

info = {
    '001':"zhang san",
    '002':"li si",
    '003':"wang wu",
}
?
b = {
    '001':"ar fu",
    1:2,
    3:4
}
info.update(b) # 有則更新,無(wú)則加入
# {'001': 'ar fu', '002': 'li si', '003': 'wang wu', 1: 2, 3: 4}
?
#fromkeys()
c = dict.fromkeys([6,7,8],[1,{"name":"ar fu"},11])
print(c)
c[7][1]['name'] = "ha ha" # 修改其中一個(gè)其他全改
print(c)
?
#items()
print(info.items()) # 返回包含每個(gè)鍵值對(duì)的元組的列表
?
#方法一
for i in info:
    print(i,info[i])
?
#方法二
for k,v in info.items():
    print(k,v)

  

三級(jí)菜單代碼

data = {
    '北京':{
        "昌平":{
            "沙河":["",""],
            "天通宛":["鏈家地產(chǎn)","我愛我家"]
        },
        "朝陽(yáng)":{
            "望京":["奔馳","陌陌"],
            "國(guó)貿(mào)":["CICC","HP"],
            "東直門":["Advent","飛信"]
        },
        "海淀":{}
    },
    '山東':{
        "德州":{},
        "青島":{},
        "濟(jì)南":{}
    },
    '廣東':{
        "東莞":{},
        "中山":{},
        "佛山":{}
    }
}
exit_flag = False
?
while not exit_flag:
    for i in data:
        print(i)
    choice = input("選擇進(jìn)入1》》:")
    if choice in data:
        while not exit_flag:
            for i2 in data[choice]:
                print("\t",i2)
            choice2 = input("選擇進(jìn)入2》》:")
            if choice2 in data[choice]:
                while not exit_flag:
                    for i3 in data[choice][choice2]:
                        print("\t\t",i3)
                    choice3 = input("選擇進(jìn)入3》》:")
                    if choice3 in data[choice][choice2]:
                        for i4 in data[choice][choice2][choice3]:
                            print("\t\t\t",i4)
                        choice4 = input("最后一層,按b返回》》:")
                        if choice4 in data[choice][choice2][choice3]:
                            print("你選擇的地址為:",choice,choice2,choice3,choice4)
                        if choice4 == "b":
                            pass
                        elif choice4 == "q":
                                exit_flag = True
                    if choice3 == "b":
                        break
                    elif choice3 == "q":
                            exit_flag = True
            if choice2 == "b":
                break
            elif choice2 == "q":
                exit_flag = True

  

 

 

4 字符串常用操作

4.1字符串方法

Python 有一組可以在字符串上使用的內(nèi)建方法。

注釋:所有字符串方法都返回新值。它們不會(huì)更改原始字符串。

方法描述
capitalize() 把首字符轉(zhuǎn)換為大寫。
casefold() 把字符串轉(zhuǎn)換為小寫。
center() 返回居中的字符串。
count() 返回指定值在字符串中出現(xiàn)的次數(shù)。
encode() 返回字符串的編碼版本。
endswith() 如果字符串以指定值結(jié)尾,則返回 true。
expandtabs() 設(shè)置字符串的 tab 尺寸。
find() 在字符串中搜索指定的值并返回它被找到的位置。
format() 格式化字符串中的指定值。
format_map() 格式化字符串中的指定值。
index() 在字符串中搜索指定的值并返回它被找到的位置。
isalnum() 如果字符串中的所有字符都是字母數(shù)字,則返回 True。
isalpha() 如果字符串中的所有字符都在字母表中,則返回 True。
isdecimal() 如果字符串中的所有字符都是小數(shù),則返回 True。
isdigit() 如果字符串中的所有字符都是數(shù)字,則返回 True。
isidentifier() 如果字符串是標(biāo)識(shí)符,則返回 True。
islower() 如果字符串中的所有字符都是小寫,則返回 True。
isnumeric() 如果字符串中的所有字符都是數(shù),則返回 True。
isprintable() 如果字符串中的所有字符都是可打印的,則返回 True。
isspace() 如果字符串中的所有字符都是空白字符,則返回 True。
istitle() 如果字符串遵循標(biāo)題規(guī)則,則返回 True。
isupper() 如果字符串中的所有字符都是大寫,則返回 True。
join() 把可迭代對(duì)象的元素連接到字符串的末尾。
ljust() 返回字符串的左對(duì)齊版本。
lower() 把字符串轉(zhuǎn)換為小寫。
lstrip() 返回字符串的左修剪版本。
maketrans() 返回在轉(zhuǎn)換中使用的轉(zhuǎn)換表。
partition() 返回元組,其中的字符串被分為三部分。
replace() 返回字符串,其中指定的值被替換為指定的值。
rfind() 在字符串中搜索指定的值,并返回它被找到的最后位置。
rindex() 在字符串中搜索指定的值,并返回它被找到的最后位置。
rjust() 返回字符串的右對(duì)齊版本。
rpartition() 返回元組,其中字符串分為三部分。
rsplit() 在指定的分隔符處拆分字符串,并返回列表。
rstrip() 返回字符串的右邊修剪版本。
split() 在指定的分隔符處拆分字符串,并返回列表。
splitlines() 在換行符處拆分字符串并返回列表。
startswith() 如果以指定值開頭的字符串,則返回 true。
strip() 返回字符串的剪裁版本。
swapcase() 切換大小寫,小寫成為大寫,反之亦然。
title() 把每個(gè)單詞的首字符轉(zhuǎn)換為大寫。
translate() 返回被轉(zhuǎn)換的字符串。
upper() 把字符串轉(zhuǎn)換為大寫。
zfill() 在字符串的開頭填充指定數(shù)量的 0 值。

注釋:所有字符串方法都返回新值。它們不會(huì)更改原始字符串。

代碼

name = "my \tname is ar fu name"
name2 = "my \tname is {name} and i am {year}"
print(name.capitalize()) #首字符轉(zhuǎn)換為大寫
print(name.count("a"))
print(name.casefold())  #把字符串轉(zhuǎn)換為小寫。
print(name.encode())    #轉(zhuǎn)化位二進(jìn)制
print(name.center(50,"-")) #返回字符串居中,并使用空格填充至長(zhǎng)度 width 的新字符串。默認(rèn)填充字符為空格。
print(name.endswith("fu")) # 如果字符串以指定值結(jié)尾,則返回 true。
print(name.expandtabs(tabsize=20)) # 設(shè)置字符串的 tab 尺寸。
print(name.find('name'))
print(name.rfind('name'))
print(name[name.find("name"):]) #在字符串中搜索指定的值并返回它被找到的位置。
?
print(name2.format(name='arfu',year=23))
print(name2.format_map( {'name':'arfu','year':'23'} ))
?
print("ab123".isalnum()) #如果字符串中的所有字符都是字母數(shù)字,則返回 True
print("ab".isalpha()) #如果字符串中的所有字符都在字母表中,則返回 True
print("1.223".isdecimal()) #如果字符串中的所有字符都是小數(shù),則返回 True
print("123".isdigit()) #如果字符串中的所有字符都是數(shù)字,則返回 True
print()
print("1a".isidentifier()) # 如果字符串是標(biāo)識(shí)符,則返回 True
print("33A".isnumeric()) #如果字符串中的所有字符都是數(shù),則返回 True。
print(" ".isspace()) #如果字符串中的所有字符都是空白字符,則返回 True
print('My Name Is'.istitle()) #如果字符串遵循標(biāo)題規(guī)則,則返回 True。
print()
print('My Name Is'.isprintable()) #如果字符串中的所有字符都是可打印的,則返回 True
print('My Name Is'.isupper()) #如果字符串中的所有字符都是大寫,則返回 True。
print('abc'.islower()) #如果字符串中的所有字符都是小寫,則返回 True。
?
print('+'.join(['1','2','3'])) #把可迭代對(duì)象的元素連接到字符串的末尾。
print('name'.ljust(10,'*')) #返回字符串的左對(duì)齊版本。不夠10用*補(bǔ)齊
print('name'.rjust(10,'-')) #
print('Arfu'.lower()) # 把字符串轉(zhuǎn)換為小寫。
print('Arfu'.upper()) #把字符串轉(zhuǎn)換為大寫。
print('\nArfu'.lstrip())
print('Arfu\n'.rstrip())
print('Arfu'.strip())
?
p = str.maketrans("abcdefg",'1234567') #返回在轉(zhuǎn)換中使用的轉(zhuǎn)換表。
print('arfu'.translate(p)) #返回被轉(zhuǎn)換的字符串。
?
txt = "I could eat bananas all day, bananas are my favorite fruit"
print(txt.partition("bananas")) #partition() 方法搜索指定的字符串,并將該字符串拆分為包含三個(gè)元素的元組。
print(txt.rpartition("bananas")) #從右開始指定字符串,并將該字符串拆分為包含三個(gè)元素的元組。
?
print('1+2+3+4'.split('+'))
print('1+2 \n+3 \n+4'.rsplit(' ',1)) #在換行符處拆分字符串并返回列表。
print('1+2\n+3\n+4'.splitlines()) #在換行符處拆分字符串并返回列表。
print('1+2\n+3\n+4'.splitlines(True)) #在換行符處拆分字符串并返回列表。保留分隔符
?
print('Ar fu'.swapcase()) #切換大小寫,小寫成為大寫,反之亦然。
print('ar fu'.title()) # 把每個(gè)單詞的首字符轉(zhuǎn)換為大寫。
print('ar fu'.zfill(10)) #在字符串的開頭填充指定數(shù)量的 0 值。

  

 

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多