=0:str+=text[index]index-=1returnstr1.2.使用切片法這個是Python中的一個特性,切片可以取負值,這是采用切片的方法,設置步長為-1,這樣就" />

亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

收藏整理的一些Python常用方法和技巧

系統 1837 0

1. 逆轉字符串的三種方法
1.1. 模擬C++中方法, 定義一個空字符串來實現
通過設置一個空字符串, 然后講參數中的字符串從后往前遍歷, 使用字符串的加法合并為新的字符串

復制代碼 代碼如下:

def reverse(text) :
??? str = ''
??? index = len(text) - 1
??? while index >= 0 :
??????? str += text[index]
??????? index -= 1
??? return str

1.2. 使用切片法
這個是Python中的一個特性, 切片可以取負值,這是采用切片的方法,設置步長為-1,這樣就實現了反過來排序。
復制代碼 代碼如下:

def reverse_1(text) :
??? return text[::-1]

1.3. 使用列表

采用列表的reverse方法,先將text轉換為列表,然后通過reverse方法反轉,然后在通過join連接為字符串。

復制代碼 代碼如下:

def reverse_2(text) :
??? temp = list(text)
??? temp.reverse()
??? return ''.join(temp)

2. 使用reduce
使用匿名函數和reduce()
復制代碼 代碼如下:

def reverse_3(text) :
??? return reduce(lambda x, y : y + x, text)
print reverse_3("Hello")

3. 遍歷字典的四種方法

復制代碼 代碼如下:

dict={"a":"apple","b":"banana","o":"orange"}
?
print "##########dict######################"
for i in dict:
??????? print "dict[%s]=" % i,dict[i]
?
print "###########items#####################"
for (k,v) in? dict.items():
??????? print "dict[%s]=" % k,v
?
print "###########iteritems#################"
for k,v in dict.iteritems():
??????? print "dict[%s]=" % k,v
?
print "###########iterkeys,itervalues#######"
for k,v in zip(dict.iterkeys(),dict.itervalues()):
??????? print "dict[%s]=" % k,v

4. 遍歷list的三種方法
復制代碼 代碼如下:

for key in lst :
??? print key
???
for i in range(len(lst)) :
??? print lst[i]
for index, key in enumerate(lst) :
??? print key??? //index是list的索引

5. 字典排序的方法
字典按照value的值從大到小的順序來排序(默認從小到排序)。
復制代碼 代碼如下:

dic = {'a':31, 'bc':5, 'c':3, 'asd':4, 'aa':74, 'd':0}
dict= sorted(dic.iteritems(), key=lambda d:d[1], reverse = True)
print dict
//輸出的結果:
[('aa', 74), ('a', 31), ('bc', 5), ('asd', 4), ('c', 3), ('d', 0)]

下面我們分解下代碼
print dic.iteritems() 得到[(鍵,值)]的列表。
然后用sorted方法,通過key這個參數,指定排序是按照value,也就是第一個元素d[1的值來排序。reverse = True表示是需要翻轉的,默認是從小到大,翻轉的話,那就是從大到小。
對字典按鍵(key)排序:

復制代碼 代碼如下:

dic = {'a':31, 'bc':5, 'c':3, 'asd':4, 'aa':74, 'd':0}
dict= sorted(dic.iteritems(), key=lambda d:d[0]) # d[0]表示字典的鍵
print dict
#sorted中第三個可選參數為reverse, True表示從大到小排序
#默認reverse = False

6. 子類和父類
子類構造函數調用父類的初始化構造函數

復制代碼 代碼如下:

class A(object) :
??? def __init__(self) :
??????? print? "testA
class B(A) :
??? def __init__(self) :
??????? A.__init__(self)

子類調用父類的同名函數
復制代碼 代碼如下:

super().fuleifunction()

7. 更靈活的參數傳遞方式
復制代碼 代碼如下:

func2(a=1, b=2, c=3) #默認參數
func3(*args)???????? #接受任意數量的參數, 以tuple的方式傳入
func4(**kargs)?????? #把參數以鍵值對字典的形式傳入

在變量前加上星號前綴(*),調用時的參數會存儲在一個 tuple()對象中,賦值給形參。在函數內部,需要對參數進行處理時,只要對這個 tuple 類型的形參(這里是 args)進行操作就可以了。因此,函數在定義時并不需要指明參數個數,就可以處理任意參數個數的情況。

復制代碼 代碼如下:

def calcSum(*args):
??? sum = 0
??? for i in args:
??????? sum += i
??????? print sum
#調用:
calcSum(1,2,3)
calcSum(123,456)
calcSum()
#輸出:
6
579
0
#################################
def printAll(**kargs):
??? for k in kargs:
??? print k, ':', kargs[k]
printAll(a=1, b=2, c=3)
printAll(x=4, y=5)
#輸出:
a : 1
c : 3
b : 2
y : 5
x : 4

python的中參數可以多種形式進行組合, 在混合使用時,首先要注意函數的寫法,必須遵守:

1.帶有默認值的形參(arg=)須在無默認值的形參(arg)之后
2.元組參數(*args)須在帶有默認值的形參(arg=)之后
3.字典參數(**kargs)須在元組參數(*args)之后

在函數被調用時,參數的傳遞過程為:

1.按順序把無指定參數的實參賦值給形參
2.把指定參數名稱(arg=v)的實參賦值給對應的形參
3.將多余的無指定參數的實參打包成一個 tuple 傳遞給元組參數(*args)
4.將多余的指定參數名的實參打包成一個 dict 傳遞給字典參數(**kargs)

8. lambda 表達式
lambda 表達式可以看做一種匿名函數
??? lambda 表達式的語法格式:
??? lambda 參數列表: 表達式?? #參數列表周圍沒有括號,返回值前沒有 return 關鍵字,也沒有函數名稱

復制代碼 代碼如下:

def fn(x):
??? return lambda y: x + y
#調用
a = fn(2)
print a(3)
#輸出
5

分析
: fn(2)調用后, 相當于a = lambda y: 2 + y, 然后a(3)被調用時.
相當于 print lambda y: 2 + 3


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 亚洲男人的天堂久久香蕉网 | 亚洲综合春色另类久久 | 奇米色奇米 | 欧美黄一片 | 欧美狠狠入鲁的视频极速 | 国产日韩欧美在线一区二区三区 | 激情影院a | 亚洲在线久久 | 在线视频日韩精品 | 好吊妞精品视频 | 在线免费不卡视频 | 久久精品天天中文字幕人 | 色人阁五月 | www色综合| 久久视频在线看 | 手机看片国产永久1204 | 精品国产福利在线 | 久艹视频在线 | 天天透天天操 | 五月天婷亚洲天综合网精品偷 | 亚洲日产 | 国产一区国产二区国产三区 | 亚洲综合色自拍一区 | 欧美色婷婷 | 国产精品视频一区牛牛视频 | 久久国产热这里只有精品8 久久国产三级 | 玖玖在线资源 | 日韩孕交japanese孕交 | 国产啪视频1000部免费视频 | 国产精品亚洲欧美日韩一区在线 | 一级毛片成人午夜 | 国产成人在线视频观看 | 成人免费视频在线看 | 五月综合在线 | 国产成人久久精品一区二区三区 | 亚欧中文字幕 | 亚洲黑人巨大videos0 | 国产91在线|亚洲 | 午夜福免费福利在线观看 | 五月婷婷视频在线 | 欧美日韩国产在线观看 |