最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

 更新時間:2015年05月18日 09:54:05   投稿:junjie  
這篇文章主要介紹了收藏的一些Python常用方法和技巧,本文講解了逆轉(zhuǎn)字符串的三種方法、遍歷字典的四種方法、遍歷list的三種方法、字典排序的方法等Python常用技巧和方法,需要的朋友可以參考下

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

復(fù)制代碼 代碼如下:

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

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

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

1.3. 使用列表

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

復(fù)制代碼 代碼如下:

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

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

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

3. 遍歷字典的四種方法

復(fù)制代碼 代碼如下:

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的三種方法
復(fù)制代碼 代碼如下:

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的值從大到小的順序來排序(默認(rèn)從小到排序)。
復(fù)制代碼 代碼如下:

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
//輸出的結(jié)果:
[('aa', 74), ('a', 31), ('bc', 5), ('asd', 4), ('c', 3), ('d', 0)]

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

復(fù)制代碼 代碼如下:

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中第三個可選參數(shù)為reverse, True表示從大到小排序
#默認(rèn)reverse = False

6. 子類和父類
子類構(gòu)造函數(shù)調(diào)用父類的初始化構(gòu)造函數(shù)

復(fù)制代碼 代碼如下:

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

子類調(diào)用父類的同名函數(shù)
復(fù)制代碼 代碼如下:

super().fuleifunction()

7. 更靈活的參數(shù)傳遞方式
復(fù)制代碼 代碼如下:

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

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

復(fù)制代碼 代碼如下:

def calcSum(*args):
    sum = 0
    for i in args:
        sum += i
        print sum
#調(diào)用:
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的中參數(shù)可以多種形式進(jìn)行組合, 在混合使用時,首先要注意函數(shù)的寫法,必須遵守:

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

在函數(shù)被調(diào)用時,參數(shù)的傳遞過程為:

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

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

復(fù)制代碼 代碼如下:

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

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

相關(guān)文章

  • python模式 工廠模式原理及實例詳解

    python模式 工廠模式原理及實例詳解

    這篇文章主要介紹了python模式 工廠模式原理及實例詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-02-02
  • python實現(xiàn)八大排序算法(1)

    python實現(xiàn)八大排序算法(1)

    這篇文章主要為大家詳細(xì)介紹了python實現(xiàn)八大排序算法的第一篇,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-09-09
  • python爬蟲教程之爬取百度貼吧并下載的示例

    python爬蟲教程之爬取百度貼吧并下載的示例

    這篇文章主要介紹了python爬取百度貼吧整個html文件下載到本地的示例,需要的朋友可以參考下
    2014-03-03
  • 詳解Django將秒轉(zhuǎn)換為xx天xx時xx分

    詳解Django將秒轉(zhuǎn)換為xx天xx時xx分

    這篇文章主要介紹了Django將秒轉(zhuǎn)換為xx天xx時xx分,本文通過實例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-09-09
  • Python中qutip用法示例詳解

    Python中qutip用法示例詳解

    這篇文章主要給大家介紹了關(guān)于Python中qutip用法示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • python3 webp轉(zhuǎn)gif格式的實現(xiàn)示例

    python3 webp轉(zhuǎn)gif格式的實現(xiàn)示例

    這篇文章主要介紹了python3 webp轉(zhuǎn)gif格式的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • Pandas Describe函數(shù)的具體使用

    Pandas Describe函數(shù)的具體使用

    在Pandas中,describe()能夠為數(shù)據(jù)框中的數(shù)值列提供統(tǒng)計摘要信息,本文主要介紹了Pandas Describe函數(shù)的具體使用,具有一定的參考價值,感興趣的可以了解一下
    2024-02-02
  • 使用Pyinstaller轉(zhuǎn)換.py文件為.exe可執(zhí)行程序過程詳解

    使用Pyinstaller轉(zhuǎn)換.py文件為.exe可執(zhí)行程序過程詳解

    這篇文章主要介紹了使用Pyinstaller轉(zhuǎn)換.py文件為.exe可執(zhí)行程序過程詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-08-08
  • Python依賴管理及打包工具Poetry使用規(guī)范

    Python依賴管理及打包工具Poetry使用規(guī)范

    這篇文章主要為大家介紹了Python依賴管理及打包工具Poetry的依賴規(guī)范,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2021-09-09
  • Python編碼類型轉(zhuǎn)換方法詳解

    Python編碼類型轉(zhuǎn)換方法詳解

    這篇文章主要介紹了Python編碼類型轉(zhuǎn)換方法,結(jié)合實例形式詳細(xì)分析了Python針對各種常見編碼的轉(zhuǎn)碼與解碼等操作技巧,需要的朋友可以參考下
    2016-07-07

最新評論

九江县| 乌审旗| 阿克苏市| 潜江市| 称多县| 镇康县| 通州区| 长宁区| 延川县| 辛集市| 锡林郭勒盟| 桂阳县| 德格县| 新疆| 托克逊县| 裕民县| 阜平县| 民乐县| 滦平县| 堆龙德庆县| 固始县| 霞浦县| 庄河市| 航空| 元江| 咸阳市| 盐城市| 陵水| 平罗县| 奉贤区| 玛纳斯县| 阳谷县| 嘉定区| 红河县| 阿鲁科尔沁旗| 崇仁县| 海安县| 句容市| 罗定市| 沈阳市| 福州市|