# 11.any()
# 與all()相反,判斷是否全爲False 除了0,空,False,None都算True
a1 = [0, False, ''] # a1 = [0, False, ' '] 注意最後的''與' ' 空指的是''連空格都沒有
a2 = ['2', '3', '4', '5', '7', '1']
print('a1', any(a1), 'a2', any(a2))
# 12.eval()
# 執行一個字符串表達式,並返回表達式的值。
str1 = '2*7'
print(eval(str1))
# 13.isinstance()
# 判斷一個對象是否是一個已知的類型,類似 type()
num1 = 23
print(isinstance(num1, int))
# 14.pow()
# 返回 x^y(x的y次方) 的值 該函數有兩個一個是內置的一個是math的函數
import math
num2 = math.pow(5, 3) # math庫的函數 輸出結果精確到小數
num3 = pow(5, 3) # 內置函數
print('num2:', num2, 'num3:', num3)
# 15.sum()
# 對系列進行求和計算。
# sum(iterable[, start])
# iterable -- 可迭代對象,如:列表、元組、集合。
# start -- 指定相加的參數,如果沒有設置這個值,默認爲0。
a = [5, 4, 6, 8, 4, 2, 15, 65]
num4 = sum(a)
print(num4)
num5 = sum(a, 3)
print(num5)
# 16.basestring() (一直報錯)
# 不能被調用和實例化,但可以被用來判斷一個對象是否爲 str 或者 unicode 的實例
# print(isinstance('tell me this is string?', basestring))
print(isinstance("Hello world", str))
# 17.execfile()
# 用來執行一個文件
# execfile在python3中已被廢除,代替函數:exec()
# 執行儲存在字符串或文件中的 Python 語句
print('hello exec(1)')
exec("print('hello exec(2)')") # 注意引號的使用
# 18.issubclass()
# issubclass(class, classinfo)
# 方法用於判斷參數 class 是否是類型參數 classinfo 的子類。
class A:
pass
class B(A):
pass
print(issubclass(B, A)) # B 是 A 的子類
# 19.print()
# 用於打印輸出,最常見的一個函數。
# print 在 Python3.x 是一個函數,但在 Python2.x 版本不是一個函數,只是一個關鍵字。
print('Note: the differences in python3 compare with it in python2 ')
# 20.super()
# 用於調用父類(超類)的一個方法
class A:
def add(self, x):
y = x + 12
print(y)
class B(A):
def add(self, x):
super().add(x)
b = B()
b.add(13)
要點:
- any() 對照all() 若全爲False 纔打印False (False:0,'空',False,None)
- eval() 執行字符串的表達式,返回表達式的值
- isinstance() 判斷對象是否是一個已知類型
- pow() 求x的y次方,注意對比math函數與內置函數
- sum() 對可迭代對象進行求和計算
- basestring() 可以作爲判斷已知類型對象 Python3已經廢除(故會一直報錯)
- execfile() python3已經廢除,替代函數爲exec() 執行一個文件或是程序語句
- issubclass(a,b) 判斷a是否是b的子類
- print() 打印輸出
- super() 調用父類(超類)的一個方法