Python中常用的內建函式input()、isinstance()
Python直譯器內建了許多函式,這意味著我們無需定義,始終可以它們。接下來和大家一起討論一個常用的內建函式-input()和isinstance()。
input()
input()函式讀取使用者輸入,並轉換成字串:
- >>> a = input() # 將input()返回的值賦值給a
- Python
- >>> a # 檢視a的值(為字串'Python')
- 'Python'
input()函式可以提供一個引數,用來提示使用者:
- >>> b = input( '請輸入你最喜歡的水果: ' ) # 給使用者必要的提示
- 請輸入你最喜歡的水果: 香蕉
- >>> b
- '香蕉'
需要注意的是,input()函式返回的值總是字串,當使用者輸入的是數字也是這樣,所以當使用它時一定要注意:
- >>> num = input( '請輸入一個數字: ' )
- 請輸入一個數字: 10
- >>> num + 9 # 試圖把num和數字相加
- Traceback (most recent call last):
- File "<stdin>" , line 1 , in <module>
- TypeError: must be str, not int
- >>> num
- '10'
- >>> type(num) # 檢視num的數字型別
- < class 'str' >
isinstance()
isinstance()函式用於檢查物件是否為指定類(或者說資料型別)的例項。isintance()的第一個引數為一個物件,第二個引數為要檢查的資料型別。
舉個例子,比如有有一個變數,你想檢查它是否為數字型別,可以使用isinstance()函式:
- score = 90
- >>> result = isinstance(score, int)
- >>> if result:
- ... print ( 'score為int資料型別' )
- ... else :
- ... print ( 'score不為int資料型別' )
- ...
- score為int資料型別
除了能檢查是否為int型別外,isintance()還能檢查其他資料型別(當然了),下面是一個綜合示例:
- >>> pi = 3.14
- >>> name = 'Wang'
- >>> complex_num = 1 + 2j
- >>> isinstance(pi, float) # 3.14為浮點數型別
- True
- >>> isinstance(name, str) # 'Wang'為字串型別
- True
- >>> isinstance(complex_num, complex) # 1 + 2j為複數
- True
isinstance()還可以驗證某個物件是否為自定義的型別:
- >>> class Developer: # 定義一個叫做Developer的類
- ...
- ... def __init__( self , name): # __init__方法中,需要輸入名字
- ... self .name = name
- ... def display( self ): # 定義了display()方法
- ... print ( "Developer:" , self .name, "-" )
- ...
- >>> class PythonDeveloper(Developer): # PythonDeveloper類,繼承了Developer類
- ...
- ... def __init__( self , name, language):
- ... self .name = name
- ... self .language = language
- ...
- ... def display( self ): # 覆蓋了父類的display方法
- ... print ( "Python Developer:" , self .name, "language:" , self .language, "-" )
- ...
- >>> dev = Developer( 'Zhang' ) # 建立一個Developer物件
- >>> dev.display() # 呼叫display()方法,以檢視該物件
- Developer: Zhang -
- >>> isinstance(dev, Developer) # 判斷dev是否為Developer類,答案是肯定的
- True
- >>> isinstance(dev, PythonDeveloper) # 判斷dev是否為PythonDeveloper類,當然不是
- False
- >>> python_dev = PythonDeveloper( 'Liu' , 'Python' ) # 建立一個PythonDeveloper物件,注意PythonDeveloper是Developer的子類
- >>> python_dev.display() # 呼叫display方法
- Python Developer: Liu language: Python -
- >>> isinstance(python_dev, Developer) # 判斷python_dev是否為Developer類,答案是肯定的
- True
- >>> isinstance(python_dev, PythonDeveloper) # 判斷python是否為PythonDeveloper類,答案也是肯定的
- True
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31543790/viewspace-2692929/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- python常用內建函式Python函式
- python 常用內建函式Python函式
- Python的常用內建函式介紹Python函式
- Python中內建的字典函式Python函式
- Python中典型內建函式的用法Python函式
- isinstance() 函式函式
- Python內建函式Python函式
- python 內建函式Python函式
- python的部分內建函式Python函式
- 8個最常用的內建函式,Python小白必備!函式Python
- python的enumerate lambda isinstance filter函式PythonFilter函式
- Python內建函式示例Python函式
- 1.5.5 Python內建函式Python函式
- Python內建函式(一)Python函式
- Python內建函式(二)Python函式
- Python 內建函式大全Python函式
- python內建函式大全Python函式
- python內建函式——sortedPython函式
- Python函式每日一講11 - isinstance()Python函式
- Python中的56個內建函式詳解(七)Python函式
- Python 中堪稱神仙的6個內建函式Python函式
- python內建函式-eval()函式與exec()函式的區別Python函式
- c++中內建函式C++函式
- python合集———內建函式合集Python函式
- python內建函式 map/reducePython函式
- python 66個內建函式Python函式
- python3內建函式Python函式
- python常見內建函式Python函式
- 【Python】內建函式 enumeratePython函式
- python 內建函式setattr() getattr()Python函式
- python高階內建函式Python函式
- Python-input函式Python函式
- Python中冷門但非常好用的內建函式Python函式
- 【Python】python內建函式介紹Python函式
- Python中,類的特殊方法與內建函式的關聯Python函式
- 三種常用的內建函式--必須牢記函式
- 內建函式函式
- 12.4、python內建函式—sortedPython函式