Python22個(gè)構(gòu)造函數(shù)方法

學(xué)習(xí)于公眾號(hào):凹凸玩數(shù)據(jù)發(fā)布的文章

寫函數(shù):就是寫一個(gè)算法,用來(lái)實(shí)現(xiàn)一些功能片吊。

01.兩個(gè)變量互換

兩個(gè)變量可以通過(guò)這種方式互相互換賦值

a=5

b=10

a,b=b,a

print(a)   #此時(shí)a=b=10

print(b)  #此時(shí)b=a=5

02.檢查是不是偶數(shù)

這個(gè)功能主要是利用bool類型進(jìn)行判斷

def is_even(num):

    return num%2==0

print(is_even(10))   #返回的應(yīng)該是true侯嘀,返回true即為偶數(shù)

print(is_even(3))    #返回的應(yīng)該是False破加,返回False即不為偶數(shù)


03.分割一個(gè)字符串為一個(gè)列表

這個(gè)案例使用換行符分割收恢,實(shí)際應(yīng)用中帖族,可以更改為任何符號(hào)

def split_lines(s):

    return s.split('/n')

a=split_lines('yang/n mu/n sen/n sen')

print (a)

運(yùn)行后:

[‘yang’,'mu','sen','sen']

04.查找對(duì)象使用內(nèi)存的大小

這個(gè)例子調(diào)用sys的看內(nèi)存占用情況函數(shù) sys.getsizeof()

import sys

print(sys.getsizeof(5)) 

print(sys.getsizeof('python'))

運(yùn)行后:

28

55

05.翻轉(zhuǎn)字符串

簡(jiǎn)單的字符串可以翻轉(zhuǎn)武契,以后的圖片募判、音頻、視頻一樣可以翻轉(zhuǎn)咒唆。如果你在一個(gè)函數(shù)里用這個(gè)功能届垫,可以解決某些場(chǎng)景里的問(wèn)題。

language='yang-wang'
reversed_language = language[::-1]
print(reversed_language)

運(yùn)行后:
gnaw-gnay

06.打印字符串X遍的小程序

1.考慮如何打印N遍全释。2.理解函數(shù)調(diào)用

def repeat(string,n):
    return(string * n)
a=repeat('y',10)
print(a)

運(yùn)行后:
yyyyyyyyyy

07.檢查一個(gè)字符串是否與他的翻轉(zhuǎn)相同

翻轉(zhuǎn)+bool判斷

def palindrome(string):
    return string==string[::-1]
print (palindrome('python'))

運(yùn)行后:
False  #False代表不相等不相同

08.把一個(gè)列表拼裝成字符串

用到了列表的join方法

strings=['1','2','3']
print('num'.join(strings))

運(yùn)行后:
1num2num3

09.將兩個(gè)列表刪除重復(fù)項(xiàng)并合并

list(set())的功能是:對(duì)原列表去重并按從小到大排序

def union(a,b):
    return list(set(a+b))
a=union([1,2,3,4,5],[6,2,8,1,4])
print(a)

運(yùn)行后:
[1, 2, 3, 4, 5, 6, 8]

10.將列表去重

def unique_elements(numbers):
    return list(set(numbers))
a=unique_elements([1,2,2,3,4])
print(a)

運(yùn)行后:
[1, 2, 3, 4]

11.找到一組數(shù)字的均值

*args 用來(lái)將參數(shù)打包成tuple給函數(shù)體調(diào)用装处;
函數(shù)mean()可以來(lái)計(jì)算均值,也可以自己造一個(gè)浸船,如下:

def average(*args):
    return sum(args,0.0)/len(args)   #  sum()用法:sum((2, 3, 4), 1),元組計(jì)算總和后再加 1
a=average(5,8,2:
print(a)

運(yùn)行后:
5.0

12.檢查一個(gè)數(shù)組里面是不是都是唯一的值

def unique(list):
    if len(list)==len(set(list)):
        print('所有數(shù)據(jù)都是唯一的')
    else:
        print('并不唯一')

a=unique([1,2,3,4,5])
print(a)

運(yùn)行后:
所有數(shù)據(jù)都是唯一的
None

13.找到列表頻率最大的數(shù)據(jù)(還未理解透徹)

def most_frequent(list):
    return max(set(list),key=list.count)

numbers=[1,2,3,2,4,3,1,3]
a=most_frequent(numbers)
print(a)

運(yùn)行后:
3

14.角度變弧度(此處往下均未學(xué)習(xí))

import math

def degrees_to_radians(deg):
    return (deg * math.pi) / 180.0

degrees_to_radians(90) 
# 1.5707963267948966

15.打印運(yùn)行計(jì)算花費(fèi)時(shí)間

import time
start_time = time.time()
a,b = 5,10  #隨便一個(gè)過(guò)程
c = a+b     #隨便一個(gè)過(guò)程
end_time = time.time()
time_taken = (end_time- start_time)*(10**6)
print("運(yùn)行這個(gè)耗費(fèi)微秒數(shù)為:", time_taken)

# 運(yùn)行這個(gè)耗費(fèi)微秒數(shù)為: 2.1457672119140625

16.找到一組數(shù)的最大公因數(shù)

借助工具functools

from functools import reduce
import math
def gcd(numbers):
    return reduce(math.gcd, numbers)
gcd([24,108,90]) 
# 6

17.使用lambda公式

x = lambda a, b, c : a + b + c
print(x(5, 10, 20)) 
# 35

# 或者也可以這樣

def x(a, b, c): 
    return a + b + c
print(x(5, 10, 30))  
# 35

18.使用map函數(shù)

對(duì)一個(gè)列表每一個(gè)元素都進(jìn)行操作的話,可以用map函數(shù),下邊是個(gè)小案例

def multiply(n):
    return n*n

list1 =[1, 2, 3]
result = list(map(multiply, list1))
print(result)
# [1, 4, 9]

19.使用過(guò)濾函數(shù)-filter

arr = [1, 2, 3, 4, 5]

def Even(x):
    return list(filter(lambda x: x % 2 == 0, arr))

Even(arr)  
# [2, 4]

20.列表連續(xù)操作

numbers = [1, 2, 3]

def squares(nums):
    return [number**2 for number in nums]

 squares(numbers)

# [1, 4, 9]

21.切片操作

切片用于從給定序列中提取元素的連續(xù)序列或子序列妄迁。以下函數(shù)用于合并兩個(gè)切片操作的結(jié)果找前。首先,我們將列表從索引d切到末尾判族,然后從開(kāi)始切成索引d躺盛。

def rotate(arr, d):
    return arr[d:] + arr[:d]

if __name__ == '__main__':
    arr = [1, 2, 3, 4, 5]
    arr = rotate(arr, 2)
    print (arr) 

# 結(jié)果:[3, 4, 5, 1, 2]

22.使用鏈功能

最后的代碼段用于從一行開(kāi)始調(diào)用多個(gè)函數(shù)并評(píng)估結(jié)果。

def add(a, b):
    return a + b
def subtract(a, b):   
    return a - b
a, b = 5, 10
print((subtract if a > b else add)(a, b))  # 15
print((subtract if a < b else add)(a, b))  # -5

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末形帮,一起剝皮案震驚了整個(gè)濱河市槽惫,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌辩撑,老刑警劉巖界斜,帶你破解...
    沈念sama閱讀 218,036評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異合冀,居然都是意外死亡各薇,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,046評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門君躺,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)峭判,“玉大人,你說(shuō)我怎么就攤上這事棕叫×煮Γ” “怎么了?”我有些...
    開(kāi)封第一講書人閱讀 164,411評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵俺泣,是天一觀的道長(zhǎng)疗认。 經(jīng)常有香客問(wèn)我,道長(zhǎng)伏钠,這世上最難降的妖魔是什么横漏? 我笑而不...
    開(kāi)封第一講書人閱讀 58,622評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮熟掂,結(jié)果婚禮上缎浇,老公的妹妹穿的比我還像新娘。我一直安慰自己打掘,他們只是感情好华畏,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,661評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布鹏秋。 她就那樣靜靜地躺著尊蚁,像睡著了一般。 火紅的嫁衣襯著肌膚如雪侣夷。 梳的紋絲不亂的頭發(fā)上横朋,一...
    開(kāi)封第一講書人閱讀 51,521評(píng)論 1 304
  • 那天,我揣著相機(jī)與錄音百拓,去河邊找鬼琴锭。 笑死晰甚,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的决帖。 我是一名探鬼主播厕九,決...
    沈念sama閱讀 40,288評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼地回!你這毒婦竟也來(lái)了扁远?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書人閱讀 39,200評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤刻像,失蹤者是張志新(化名)和其女友劉穎畅买,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體细睡,經(jīng)...
    沈念sama閱讀 45,644評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡谷羞,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,837評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了溜徙。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片湃缎。...
    茶點(diǎn)故事閱讀 39,953評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖蠢壹,靈堂內(nèi)的尸體忽然破棺而出雁歌,到底是詐尸還是另有隱情,我是刑警寧澤知残,帶...
    沈念sama閱讀 35,673評(píng)論 5 346
  • 正文 年R本政府宣布靠瞎,位于F島的核電站,受9級(jí)特大地震影響求妹,放射性物質(zhì)發(fā)生泄漏乏盐。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,281評(píng)論 3 329
  • 文/蒙蒙 一制恍、第九天 我趴在偏房一處隱蔽的房頂上張望父能。 院中可真熱鬧,春花似錦净神、人聲如沸何吝。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 31,889評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)爱榕。三九已至,卻和暖如春坡慌,著一層夾襖步出監(jiān)牢的瞬間黔酥,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 33,011評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留跪者,地道東北人棵帽。 一個(gè)月前我還...
    沈念sama閱讀 48,119評(píng)論 3 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像渣玲,于是被迫代替她去往敵國(guó)和親逗概。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,901評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容