>>a=input() 將input() ">
Python解釋器內置了許多函數(shù),這意味著我們無需定義,始終可以它們。接下來和大家一起討論一個常用的內建函數(shù)-input()和isinstance()。
input()
input()函數(shù)讀取用戶輸入,并轉換成字符串:
- >>> a = input() # 將input()返回的值賦值給a
- Python
- >>> a # 查看a的值(為字符串'Python')
- 'Python'
input()函數(shù)可以提供一個參數(shù),用來提示用戶:
- >>> b = input('請輸入你最喜歡的水果: ') # 給用戶必要的提示
- 請輸入你最喜歡的水果: 香蕉
- >>> b
- '香蕉'
需要注意的是,input()函數(shù)返回的值總是字符串,當用戶輸入的是數(shù)字也是這樣,所以當使用它時一定要注意:
- >>> num = input('請輸入一個數(shù)字: ')
- 請輸入一個數(shù)字: 10
- >>> num + 9 # 試圖把num和數(shù)字相加
- Traceback (most recent call last):
- File "
" , line 1, in- TypeError: must be str, not int
- >>> num
- '10'
- >>> type(num) # 查看num的數(shù)字類型
- <class 'str'>
isinstance()
isinstance()函數(shù)用于檢查對象是否為指定類(或者說數(shù)據(jù)類型)的實例。isintance()的第一個參數(shù)為一個對象,第二個參數(shù)為要檢查的數(shù)據(jù)類型。
舉個例子,比如有有一個變量,你想檢查它是否為數(shù)字類型,可以使用isinstance()函數(shù):
- score = 90
- >>> result = isinstance(score, int)
- >>> if result:
- ... print('score為int數(shù)據(jù)類型')
- ... else:
- ... print('score不為int數(shù)據(jù)類型')
- ...
- score為int數(shù)據(jù)類型
除了能檢查是否為int類型外,isintance()還能檢查其他數(shù)據(jù)類型(當然了),下面是一個綜合示例:
- >>> pi = 3.14
- >>> name = 'Wang'
- >>> complex_num = 1 + 2j
- >>> isinstance(pi, float) # 3.14為浮點數(shù)類型
- True
- >>> isinstance(name, str) # 'Wang'為字符串類型
- True
- >>> isinstance(complex_num, complex) # 1 + 2j為復數(shù)
- 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') # 創(chuàng)建一個Developer對象
- >>> dev.display() # 調用display()方法,以查看該對象
- Developer: Zhang -
- >>> isinstance(dev, Developer) # 判斷dev是否為Developer類,答案是肯定的
- True
- >>> isinstance(dev, PythonDeveloper) # 判斷dev是否為PythonDeveloper類,當然不是
- False
- >>> python_dev = PythonDeveloper('Liu', 'Python') # 創(chuàng)建一個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
>>本文地址:http://liujunjsxg.cn/zhuanye/2020/48576.html
聲明:本站稿件版權均屬中公教育優(yōu)就業(yè)所有,未經許可不得擅自轉載。
1 您的年齡
2 您的學歷
3 您更想做哪個方向的工作?