00:00
刚刚我们说了这个变量和这个对象啊,接下来呢,我们来说我们下一个知识点啊,下一个知识点呢,啊,相对来说用的没有那么多,但是我们要知道一下叫做一个类型的转换,诶类型转换诶那什么叫类型转换呢?那非常简单啊,所谓的这个类型转换就是什么呢?哎,就是将一个类型的对象哎转换为其他对象啊,将一个类型的对象转换成其他对象,比如说咱们来这儿来,我来整一个创建一个新的文件啊,保存一下啊,那这个放到code里是我们的一零,我专门就叫一个类型转换啊,类型转换啊,那这个什么叫零转换啊,比如说我们这来看一下啊,我来一个这个A等于一个hello,然后来一个B等于一个123,这是两个,一个是A,一个是BA是字符串,BA是。
01:00
一个,那哎是一个整形对吧,那我这来一个A加B,之前我们说了不同类型之间是不是不能进行运算呀?哎,这里我直接一直行肯定就干嘛了,报错了,Must比string not int必须得是一个什么呀,字符串不能是一个整形,那这个时候注意之前演示过了,哎,我们说字符串跟这个数字之间不能进行加法运算啊,不能进行加法运算,那这里如果你需要进行压加法运算的话,你得转了,你要么把字符串转换成数字,要么就把数字转换成字符串,这也就是我们说的一个类型转换,那同学看到这就有问题了,哎,老师你不是说我们的Python是强类型的语言吗?也就是说对象对象一旦创建类型是不能修改的,你怎么又说到类型转换呢?哎,注意类型转换它不是改变对象本身的类型,一定注意,类型转换它不是改变我们对象本身的类型,一定注意啊。
02:00
不是转换对象本身类型,而什么呢?而是将我们这个对象的值,哎转换为一个什么呀?哎,转换为一个这个新的这个对象啊,而是将这个对象的值转换成新的对象,所以注意待会我们会去演示,我会把123转换成字符串,但是这个时候注意123,假如说这是我那个123那个对象,我现在把123转成字符串,并不是把它原来的对象给变了,而是干嘛?而是创建了一个新的对象,而这个新的对象是根据123这个字数字去创建的这么一个字符串啊,所以注意类型转换并不会改变原有对象,它是干嘛?哎,是创建了一个新的对象啊创建呃,而是将对象的值诶转换为新的对象,或者这么说吧,而是诶根据我们这个当前对象的值,哎,创建一个什么呀。
03:00
创建一个新对象啊,创建一个新对象,所以注意啊,这是我们说类型转换,一定注意Python强类型,对象的类型永远都不能改变啊,对象类型永远都不能改变,好,那这里边我们来先说转换,那其实说是类型转换呢,其实在我们这儿就是三个函数,哎,类型转换的哎,四个函数吧,哎四个函数哎,我们有哪四个函数呢?一个是我们这个in的函数,还有一个是我们这个float f floatat啊float函数,还有一个谁呢?还有一个是我们这个str,哎,Str还有谁呢?还有我们这个Bo啊这么三个这么四个函数啊四个函数先说我们第一个int int是整形的意思啊,Int它可以什么呢?哎,它可以注意了,这里边我们一说什么什么函数啊,什么什么函数,就是肯定后边加了一个这个括号啊,加了一个括号,加了括号就表示一个函数,那以后我说。
04:00
调用什么什么函数,那你就是什么什么加括,我说调用int函数,就是int加括号,我说调用ABC函数,就是ABC加上一个括号,说调一个print函数,就是print加一个括号,啊这我们之前说过了,再强调一下,Int可以用来干嘛呢?哎,用来将我们这个其他的对象,哎其他的对象转换,为什么呢?转换为我们这个整形,这非常简单,直接来演示,现在我来写一个,咱们先拿一个只举例子啊,来一个A等于一个这个处啊,A等于处,现在A是一个布尔值,对吧,A是一个布尔值,然后在这我们来普认它一下,A等于我打印一下A的值,然后我再打印一下,打印什么呢?哎,A的一个类型,哎,A的类型是,哎,我再打印一下A的类型,怎么获取类型来的,哎,我们是一个这个type来一个A啊,那这样我们这一值行看到效果是A的值是处,它的类型是一个布尔值啊,布尔值那。
05:00
现在我想干嘛呢?我想把A转换成什么呢?转换成一个number,我要怎么转来在这儿我们来调用我们这个int来将我们这个A转换为这个整形,我们来看怎么转啊怎么转,那这里边其实也非常简单,直接调一个int一个A就行了,调一下int函数,把A作为参数给它传进去,这样就OK了啊,这样OK了,但是注意我这么写,你猜的有没有用啊,有没有用,我们这一保存,一执行,你会发现A的值还是处类型是不是,还是不尔值啊,还是不尔值,你说我在这儿调的时候,实际上没有任何作用,为什么我们还是那句话,它是干嘛,这个函数是把A对应的那个对象这个处转换成了number,哎,转成number,但是注意它有没有对A这个变量产生影响啊,哎,没有对变量产生影响,所以注意我们这个in的函数,哎,它不会对。
06:00
对我们这个原来的变量产生影响,你再怎么调,对原来变量不会有任何影响,之前说了,如果你要对变量进行影响,是不是必须得对变量进行重新赋值啊,而这儿我有没有重新赋值,没有赋值,所以对原来变量不会产生影响啊,印的函数不会对原来的变量产生影响,它是干嘛呢?它是诶将其,诶将这个对象转换为这个指定的类型啊,指定类型并干嘛呢?诶并将其作为这个返回值返回啊,并将其作为返回值返回,所以这里边注意A是不会变的,转了,但是A是不会发生任何改变的,那你说老师我现在就想把A变了怎么办呢?哎,如果希望改回原半量,哎改修改原来变量,如果希望修改我们这个原来的变量,哎,则需要,哎,对我们这个变量进行重新赋值怎么办?
07:00
非常简单,直接来一个A等于int a,也就是说我把int a这个函数的执行结果赋值给变量A,那这个时候你再看它就变了啊,它就变了,我直接一执行,我们来看A的值是一类型,是不是变成int了,哎,变成int了,所以这个时候你就注意了,哎,我们注意了什么呀?过尔值处会变成一啊,我变成一,看懂这意思吧,哎,这你看懂了,剩下的就都简单了啊,剩下都简了好,那我们再看一个,我这来一个A等于一个这个负,现在A的值变成负了,我这一直行是负,然后是一个不尔值,然后我这还是来一个这个in a这一直行来看A变成几了,哎,变成零了,所以注意true它转换成number,转成整形式一,而false转换完了是一个零,就这么简单啊,这是对我们这种不尔值的情况,待会儿我们再总结一下,现在你先明确知道这东西怎么用,如果你要影响原来的变量,你需要给它付回去,如果你不影响。
08:00
直接掉就行了啊,直接掉就行,好,那接着再来说,这是我们的一个这个不尔值的情况,还有什么呀,我们还有字符串对吧?还有字符串我来一个A等于一个123这一保存,现在来看A的值是一个123,它的类型是一个str对吧?Str,那现在我要把它转换,怎么转换,其实一个道理,A等于一个一个in的一个A直接来执行一下,看效果走一个,现在A变成了什么呀?In的类型值是什么?值是123啊,值是123,那就是这么简单啊,就这么简单。好那接下来我们来总结一下int函数的规则,Int的规则它有哪些规则?对于int函数来说,Int它可以将其他的数据类型转换为整形,我们分这就几几种情况来说,布尔值处就是转换为哎处我们会转换为一,而我们这个false它会转。
09:00
范为零,这是固定的啊,这是固定的对于不尔值的情况,然后对于我们这个浮点数啊,浮点数,浮点数干嘛的呢?看着我这来一个A等于一个这个,诶1.6啊或者11.6啊,A等于10.6,那现在我们来看A的值是11.6类型是一个float啊浮点数在这我直接来一个A等于一个int a啊int a我这一执行变成什么了,变成了11啊,变成了11,所以对于浮点数它是干嘛呀,它是直接整,哎,直接取整。之恒轴怎么取的呀?哎,直接去掉我们这什么呀,哎,直接省略我们这个,哎,小数点以后的内容,小数点后的内容啊后的内容,所以注意像这种11.6最后是不是给我变成11了,诶没有进行四舍五入,这个点六后边全都干嘛了,惹了啊,你都惹了,所以注意直接舍去小数点后的一个内容,这是我们说的一个它啊。
10:03
好啊,那接下来。我们再来说下边一个是我们的这个字符串。哎字符串,字符串这块我们来说有什么特点呢?哎字符串像这种情况,123是不是就直接转换成我们这个数字了,哎对于字符串来说叫什么呢?哎合法的哎整数字符串,哎直接转换为我们这个对应的一个数字啊对应的数字如果你这个字符串是合法的是一个,像这种是一个123,它是不是就是一个整数,哎那它干脆就直接转成对应的数字,123字符串就转换成123456字符串就转换成456,那如果什么呢?如果不是一个合法的什么呀?哎合法的一个这个字符串,哎合法的一个整数数字,整数字符串,哎字符串则什么呢?哎则报错什么意思,咱们来看啊,现在我们的这个A是一个11.6,这是刚才浮点数,我们这来一个A等于个11.6,现在它11.5吧。
11:14
它是一个字符串,走11.5是一个字符串,但是注意它现在是不是一个合法的整数,很明显不是,它是一个小数对吧,小数,那这个时候我们来转的时候,来一个int,一个A直接保存我们这来执行,我们来看它是不是就报错了,哎告诉你非法的一个字面量for int with的这个BASE10 11.5什么意思啊,就是说白了,你这东西我不认识啊,不认识转不了啊,转不了则报错,报的什么错啊,这个错我们应该叫它是一个异常,叫做一个value error啊value error好,那这是我们说的几种啊是吧,布尔值,浮点数,还有这个字符串这种几种方式啊,几种方式,那如果是这样啊,看着我这换一个,我来什么呢?我来一个A等于这个捺A等于,那我们这一保存现在是,诶这上边报错了,上面的异常没注,我给注了啊,一保存现在A的值是一个none类型是none type,然后这。
12:14
我还是来一个A等于一个这个int,一个A,我们在这一保存一执行,是不是也是报错了,哎,也是报错了,哎,你叫什么呀?哎,Int arguments must bea string a best like object or number not none type,也就说在这里边是不是不能传这个none这个类型啊,哎,None类型啊,所以注意,哎,那这里边注意我们直接写了,如果对于其他不可,哎转换为这个什么呀?哎,整形的这个对象,哎直接抛出异常啊,直接抛出异常我们的是一个什么呀?哎,Y了啊,Value error,所以注意,当你去调int的时候,如果看见value error,那证明什么?证明你这值它转不了,就报这个异常了啊报这个错了,好,那这个是我们说的一个int这个函数啊,Int这函数,然后float呢,其实都不用演示了,咱们可以看一眼float其实就一样了啊,我函。
13:15
这是拿A举例子,A我来一个一,然后现在我们先看结果啊,刚才那刚才那个错还没出掉啊,把这个入了。关闭右侧标签,我们来执行一下是一,然后我直接来一个A,诶等于一个这个float一个,诶这一保存,我们这一执行现在是不是变成float值变成了1.0了,对吧,就是把我们这个整数变成了一个浮点数啊,变成一个浮点数,所以float呢,它和我们这什么呀?哎float哎,Float它和我们这个浮点数的哎和我们这个in它的规则啊基本一致,哎基本一致,诶不同的是它会将我们这个对象转换为我们这个浮点数啊浮点数这也是我们说的一个float的,就是说虾你都换啊波尔值float会转换成处会转换成1.0 false呢,就是就是哎就是零是吧,0.0,其实我们来看一眼吧,False直接来一个A等于一个false false应该它会变成0.0,我这一直行是一个false,然后在这我直接来一个A等于一个这个float。
14:23
它来一个A啊,直接保存f float at,保存一面一执行是不是变成0.0啊,哎,0.0啊,所以注意对于我们这个float的来说,处是变成1.0,负四就变成0.0,而如果你是整数,整数就给你加零,你是一就变成1.0,十变成10.0加零啊,然后字符串,那就就是什么呀,你得是一个合法的小数,字符串直接转成对应的数字,如果不是才报错啊,才报数,就这么一个区别,其实整体都一样,就是它是转这个小数,而in它是转这个整数的啊,就这么简单,好,这是我们说的一个float float完事以后,我们接着再来说,然后是谁呢?我们的一个STRSTR就非常简单了,这个函数可以直接,哎可以将我们这个对象,哎转换为我们这个字符串,这其实非常简单了,直接看效果,我来一个A等于一个123,随便一直行A的直是123,类型是一个印的,那我要转怎么转,还是A等于SP。
15:23
第二,一个12A一个A,它就会把A转换成字符串,然后赋值给,诶,我这一执行是不是变成字符串值是123了,哎,值是123了,那刚才我们做那个事儿,我们说了,如果是两个一个字符串跟一个number进行拼串,说拼不了,你要想拼怎么办?在这儿你就可以这么拼print一个啊比如说我这来一个B等于一个456,我可以怎么拼呢?直接来一个hello加上一个B,这么拼是会报错了,是不是报错了怎么办?你可以给B外边套一个SSPR,哎,把B用这str这函数给它包起来,这样再执行。
16:02
这个应该是括号的问题啊,括号的问题又写成这个中文的括号,大家写的时候一定要注意啊,是我们这个英文的括号啊,STRB直接我们来执行一下。哦,那不是这个括号了,是我们这个,哎,这个万恶的这个print的这个括号写错了啊,Print的这个括号来这个时候我们再保存,这已直行,这个是没问题了,哎,就可以拼了啊,就可以拼了,所以这一块注意这个我们就可以这么用了,当你需要跟字符块进行拼的时候,你可以调用str给它转一下啊给它转一下,好,这我们先注掉,那这个东西就没什么可说的了,是吧?哎,它这几个规则,规则就是什么呀,紧接着写一下,诶true,如果你是true它干嘛呀,给你变成字符串库,如果你是false file SE false,给你变成字符串一个false是吧,如果你是123,给你变成这个什么呀,字符串123,哎等等吧,等等就省略,其实就是把这东西变成了一个字符串啊,变成一个字符串,这是我们的一个str啊str下边一个是我们这个bol bol,它可以将我们这个对象转换为什么呀?哎,布尔值啊,转换成布尔值,注意了,在我们的Python里边诶。
17:17
任何对象都可以转换为布格调用方式,跟我们这个SSPR,跟我们这个lo,跟我们这个in的是一样的啊,跟我们in的是一样的,但是这里边我们要说一下,主要说的是规则啊规则,哎,它对于什么呢?哎,对于我们这个所有表示空性的对象,哎或者是这个错误对象,空性的对象哎都会转换为false,哎其余的转换为处啊极的转换处所有的表示没有的,它都会转换成false,剩下的都是处,比如咱们这来举例子啊,举例子,我这来一个A,等于一个一一保存一是不是一个int对吧?Int现在我转一下,我直接来一个A,等于一个Bo,一个A,我们这一保存一执行变成什么?变成了处,因为一是有的意思是吧,哎,那你本来处就是对应的一对吧,我要来个100呢,一保存走你还是处啊还是。
18:17
我要来什么呢?负100呢,我这一保存走,你是不是还是处,哎,还是处,那我要来什么呢?我要来一个零呢,零一保存走一个是什么for,为什么呀?因为零表示没有,没有就属于空性,所以注意所有表示空性的最后都会转换成for,再比如说我来字符串来一个hello,随便写一个一保存一走是不是处啊,哎,但是看着我这如果是一个空串,什么叫空串啊,就俩引号里边什么都没有,那这个就表示的是空性,这时候我这一执行好一个。是false呀,哎,这也是for啊,注意,所有表示空性的都会转换成for。
19:03
再比如。我这是一个捺啊,我这一直行走一个是不是也是for,哎,也是,所以这一块一定要注意了,所有的表示空性都会转成负字,那这里边我们来举个例子,哪些表示的是空性,哪些表示是空性,比如说零啊,比如说零,咱们就先说一下我们知道的是吧,零还有什么呢?还有我们这个那啊还有什么呢?还有我们这个空串,这些都是空性的,这些都会转成for字,其余的转换成处,那以后我们会说是吧,你就只要记住转成for情况就行了,剩下的都是true啊,都是true,当然情况还没有列全,因为我们还没有去涉及到可变对象,对吧?等往后讲的时候我们再去举例子,但是你现在知道先说这几种,所有表示空性的都会转换成for,其余的都是处啊好,这是我们说一个类型转换,说这么四个函数,In的lo s string,还有这个哎,布尔啊不璃,那这四个函数,诶,我们可以自己来用一下。
20:07
哎,四个函数可能相对来说用的并不是特别的多,但是我希望你把它用法给它熟悉一下,然后并且也熟悉一下函数,我们第一次就一下子说了四个四个函数,一定要把函数用的非常非常的熟悉,好好体会一下函数是吧?哎,那这里边儿这是什么?我们叫参数,而这个玩意儿我们是什么呀?叫做返回值对吧?把返回值赋值给变量A传一个参数,这个参数也是,诶啊把这东西自己去体会一下啊,它的这个类型转换,好,我们来停一下。
我来说两句