python nums函式 python函式

2021-10-11 09:58:18 字數 2956 閱讀 2248

預設引數:函式的引數可以有乙個預設值, 如果提供有預設值,在函式定義中, 引數以賦值語句的形式提供。事實上這僅僅是提供預設引數的語法,它表示函式呼叫時如果沒有提供這個引數, 它就取這個值做為預設值

def foo(debug=true):

'determine if in debug mode with default argument'

if debug:

print'in debug mode'

print 'done'

foo()

建立類例項

1 classfooclass(object):2 """my very first class: fooclass"""

3 version = 0.1

5 def __init__(self, nm='john doe'):6 """constructor"""

7 self.name =nm8 print 'created a class instance for', nm9

10 defshowname(self):11 """display instance attribute and class name"""

12 print 'your name is', self.name13 print 'my name is', self.__class__.__name__

15 defshowver(self):16 """display class(static) attribute"""

17 printself.version18

21 return x +x22

23 foo1 = fooclass() #created a class instance for john doe

24 foo1.showname() #your name is john doe #my name is fooclass

26 foo1.showver() #0.1

28 print foo1.addme2me(5) #10

30 print foo1.addme2me('xyz') #xyzxyz

注:每個方法的呼叫都返回我們期望的結果。比較有趣的資料是類名字。在showname()方法中,我們顯示 self.__class__.__name__ 變數的值。對乙個例項來說, 這個變數表示例項化它的類的名字。(self.__class__引用實際的類)。在我們的例子裡, 建立類例項時我們並未傳遞名字引數, 因此預設引數 'john doe' 就被自動使用。

type() 和 isinstance()

#!/usr/bin/env python

def displaynumtype(num):

print num, 'is',

if isinstance(num, (int, long, float, complex)):

print 'a number of type:', type(num).__name__

else:

print 'not a number at all!'

displaynumtype(-69)

displaynumtype(9999999999999999999999l)

displaynumtype(98.6)

displaynumtype(-5.2+1.9j)

displaynumtype('***')

答案:-69 is a number of type: int

9999999999999999999999 is a number of type: long

98.6 is a number of type: float

(-5.2+1.9j) is a number of type: complex

*** is not a number at all!

#多元賦值 x,y,z = 1,2,3 #等於 (x, y, z) = (1, 2, 3)

1 #range()函式經常和len()函式一起用於字串索引

2 foo = 'abc'

3 for i inrange(len(foo)):4 print foo[i], '(%d)' %i5

6 #enumerate

7 foo = 'abc'

8 for i in enumerate(foo,1):9 printi10

11 #列表解析

12 l = [x **2 for x in range(4)]13 for w inl:14 printw15

16 #函式 功能

17 #abs(num) 返回 num 的絕對值

18 #coerce(num1, num2) 將num1和num2轉換為同一型別,然後以乙個 元組的形式返回。

19 #divmod(num1, num2) 除法-取餘運算的結合。返回乙個元組(num1/num2,num1 %num2)。對浮點數和複數的商進行下捨入(複數僅取實數部分的商)

20 #pow(num1, num2, mod=1) 取 num1 的 num2次方,如果提供 mod引數,則計算結果再對mod進行取餘運算

21 #round(flt, ndig=0) 接受乙個浮點數 flt 並對其四捨五入,儲存 ndig位小數。若不提供ndig 引數,則預設小數點後0位。

22 #round() 僅用於浮點數。(譯者注:整數也可以, 不過並沒有什麼

24 #ascii轉換函式

25 ord('a') 97

26 chr(91) 'a' #將ascii值的數字轉換成ascii字元,範圍只能是0 <= num <= 255。

28 list(iter) 把可迭代物件轉換為列表29 str(obj) 把obj 物件轉換成字串(物件的字串表示法)30 unicode(obj) 把物件轉換成unicode 字串(使用預設編碼)31 basestring() 抽象工廠函式,其作用僅僅是為str 和unicode 函式提供父類,所以不能被例項化,也不能被呼叫32 tuple(iter) 把乙個可迭代物件轉換成乙個元組物件

ElasticSearch查詢方法(python)

es.search index my index doc type test type 或者 body es.search index my index doc type test type body body term body 查詢name python 的所有資料 es.search inde...

robot framework自定義python庫

自定義python庫的好處 robot framework填表式,將python的靈活性弄沒了,但是不要擔心,rf早就想到了解決辦法,就是擴充自己的庫.1.在python應用程式包目錄下建立乙個新包 d python27 lib site packages newlibrary 這裡注意資料夾new...

itemcf的hadoop實現優化 Python

原始資料如下 u1 a,d,b,c u2 a,a,c u3 b,d u4 a,d,c u5 a,b,c 計算公式使用 sim u i u j u i u j 其中 u i u j u i u j u i u j 原始的hadoop實現需要5輪mr,優化後只需要兩輪就可以完成。之前的輪數過多,主要在於...