1.python中的变量
首先我们需要了解两个概念:
c1 = 'hello'
c2 = 'python'
对象:当创建数据对象时,在内存中会保存对象的值,这个值就是对象自己;(例如字符串对象: ”hello”)
引用:对象保存在内存空间,外部想要使用对象的值,需要使用引用,就是‘c1’,’c2’。内存会保存对象的引用数量,当某个对象的引用数量为0时,对象会被回收,即存储此对象的内存地址被释放。
python中在使用变量时,会给将对象存储在内存中,将对象的引用指向对象,并且,在Python中,会有一个缓存对象的机制,以便重复使用,当我们创建多个等于1的引用时,实际上是让所有这些引用指向同一个对象,以达到节省资源的目的,从以下结果可以看出,a与b变量同时和对象‘1’对应的地址事实上为同一个地址,也就是当我们使用变量a和b时,使用的是同一个对象,而a,b是这个对象的引用,因此,我们可以看到id()返回对象的内存起始地址都是相同的, :
当我们再运行a=2时,会创建一个新的对象并分配内存,同时将a指向新的对象,此时b的指向不变:
删除内存中的变量如下:
2.python中的数据类型
同时python作为动态类型语言,在定义变量时并不需要进行声明数据类型,而是根据变量第一次赋值时动态的记录数据,例如:
注意:在创建字符串对象时,注意特殊字符的转义,使用\进行转义,否则会显示语法错误:
python中的bool值:0为假、非0为真;需要注意的是:空字符为假,非空为真,并且空格不是空:
python作为强类型语言,已经确定数据类型的变量的类型只有经过强制类型转换才能改变类型,否则类型永远不会改变:
例如:int型的变量可以强转为float类型的变量,同时也可以转换为一个字符串型的变量:
但是需要注意以下两种情况:
2.python中的输入输出
1.python中的输入:input() 函数
注意:在python2.x与python3.x版本中的input()函数使用时有区别,首先看python3中的input函数:
在python3中,input函数可以接受任何类型的参数,并将接受的参数都作为字符串类型看待,返回字符串类型:
在python2中使用input()函数时,输入数字不会报错,并且保存为相应的类型,但是输入字母或字符串时会报错,必须使用’ '或" "将字符串引起来才行:
而python2中的raw_input() 则相当于python3中的input():
还需要注意的是,在python中不同类型的变量不能比较,需要转换为相同类型的变量才能比较:
python小技巧之密码无回显:
由于python中包含丰富的第三方库,所以当我们需要实现某些功能时可以直接调用方法:
2. python中的输出:print() 函数
格式化输出方法与C语言类似:
输出百分比如下: