python系列教程72
Posted 人工智能AI技术
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python系列教程72相关的知识,希望对你有一定的参考价值。
朋友们,如需转载请标明出处:https://blog.csdn.net/jiangjunshow
声明:在人工智能技术教学期间,不少学生向我提一些python相关的问题,所以为了让同学们掌握更多扩展知识更好地理解AI技术,我让助理负责分享这套python系列教程,希望能帮到大家!由于这套python教程不是由我所写,所以不如我的AI技术教学风趣幽默,学起来比较枯燥;但它的知识点还是讲到位的了,也值得阅读!PS:看不懂本篇文章的同学请先看前面的文章,循序渐进每天学一点就不会觉得难了!
就像我们之前使用过的很多例子一样,当在Python中运行赋值语句a = 3时,虽然没有告诉Python将a作为一个变量来使用,或者没有告诉它a应该作为一个整数类型对象,但代码一样也能工作。在Python语言中,这些都会以一种非常自然的方式完成。
一个变量(也就是变量名),就像a,当代码第一次给它赋值时就创建了它。
变量永远不会有任何的和它关联的类型信息或约束。类型的概念是存在于对象中而不是变量名中。变量原本是通用的,它只是在一个特定的时间点,简单地引用了一个特定的对象而已。
当变量出现在表达式中时,它会马上被当前引用的对象所代替,无论这个对象是什么类型。此外,所有的变量必须在其使用前明确地赋值,使用未赋值的变量会产生错误。
总而言之,变量在赋值的时候才创建,它可以引用任何类型的对象,并且必须在引用之前赋值。这意味着,不需要通过脚本声明所要使用的名字,但是,必须初始化名字然后才能使用它们;例如,必须把计数器初始化为0,然后才能增加计数。
这种动态类型与传统语言的类型相比有明显的不同。刚入门时,如果清楚地将变量名和对象划分开来,动态类型是很容易理解的。例如针对于下面这条语句:
>>> a = 3
至少从概念上来说,Python将会执行三个不同的步骤去完成这个请求。这些步骤反映了Python语言中所有赋值的操作:
1.创建一个对象来代表值3。
2.创建一个变量a,如果它还没有创建的话。
3.将变量与新的对象3相连接。
变量和对象保存在内存中的不同位置,并通过连接相关联。变量总是连接到对象,并且绝不会连接到其他变量上,而更大的对象可能连接到其他的对象(例如,一个列表对象能够连接到它所包含的对象)。
在运行a=3后,变量a变成对象3的一个引用。在内部,变量事实上是到对象内存空间的一个指针。
在Python中从变量到对象的连接称作引用。也就是说,引用是一种关系,以内存中的指针的形式实现。一旦变量被使用(也就是说被引用),Python自动跟随这个变量到对象的连接。上面的解释比术语所描述的要简单得多。如果以具体的术语来讲,那么:
•变量是一个系统表的元素,拥有指向对象的连接的空间。
•对象是分配的一块内存,有足够的空间去表示它们所代表的值。
•引用是自动形成的从变量到对象的指针。
至少从概念上讲,在脚本中,每一次通过运行一个表达式生成一个新的值,Python都创建了一个新的对象(换言之,一块内存)去表示这个值。从内部来看,作为一种优化,Python缓存了不变的对象并对其进行复用。但是,从逻辑的角度看,这工作起来就像每一个表达式结果的值都是一个不同的对象,而每一个对象都是不同的内存。从技术上来讲,对象有更复杂的结构而不仅仅是有足够的空间表示它的值那么简单。每一个对象都有两个标准的头部信息:一个类型标志符去标识这个对象的类型,以及一个引用的计数器,用来决定是不是可以回收这个对象。
以上是关于python系列教程72的主要内容,如果未能解决你的问题,请参考以下文章
#私藏项目实操分享#愚公系列2022年05月 Python教学课程 72-DRF框架之认证和权限
C++视频教程201802C语言提高全72讲 视频教程+源代码
Azure 机器人微软Azure Bot 编辑器系列 : 机器人/用户提问回答模式,机器人从API获取响应并组织答案 (The Bot Framework Composer tutorial(代码片段