>>>?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?””,?line?1,?in
TypeError:?must?be?str,?not?int
>>>?num
’10’
>>>?type(num)???????????????????????????#?查看num的数字类型
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
10345262