4.Python中的变量,关键字,数据类型,类型转换及变量的删除

1.变量

(1)什么是变量

变量就是对内存地址空间的一个引用

变量名只有在第一次出现时才是定义变量,当再次出现时,不是定义变量,而是直接引用之前定义的变量。

用标识符命名的存储单元的地址称为变量,变量是用来存储数据的,通过标识符可以获取变量的值,也可以对变量进行赋值。

对变量赋值的意思是将值赋给变量,赋值完成后,变量所指向的存储单元存储变量被赋的值,删除变量后,内存空间释放

变量就是一块内存空间,申请空间后存储变量被赋的值

(2)变量的命名方法

1> 命名的规范性

  • 变量名由字母、数字、下划线这三种字符组成,但是不能以数字开头。例如:sheena1是合法变量名,而1jay不可以。

  • 变量名尽量不要和系统关键字重名,这样会给系统带来不必要的麻烦

  • Python的变量名是区分大小写的

  • 变量的命名最好做到见名知意

注意:单独的下划线_是一个特殊变量,用于表示上一次运算的结果

2> 驼峰命名法

大驼峰:每一个单词的首字母都大写:FirstName、LastName
小驼峰:第一个单词以小写字母开始,后续单词的首字母大写:firstName、lastName

(3)变量的类型

在python中,定义变量时,不需要指定变量的类型

类型说明
int整型
float小数型,或浮点数、浮点型
str字符串型
bool布尔型,真:True 假:False
(4)变量和地址的关系
Python中采用基于值的内存管理方式,不同的值分配不同的内存空间
当给变量赋值时,Python解释器为该值分配一个内存空间,而变量则指向该空间

当变量的值被改变时,改变的不是该内存空间的内容,而是改变了变量的指向关系,使变量指向另一内存空间

可以理解为:Python变量并不是某一固定内存单元的标识,而是对内存中存储的某个数据的引用,这个引用是动态改变的
Python具有自动内存管理功能,对于没有任何变量指向的值(垃圾数据),Python系统自动将其删除

例如:a从指向1转向2后,数值1变成了没有变量引用的垃圾数据,Python会回收垃圾数据的内存单元,以便提供给别的数据使用
这就是垃圾回收,也可以用del语句删除一些对象的引用

在这里插入图片描述

(5)Python的id()函数可以返回其对象的内存地址

Python解释器会为每个出现的对象分配内存单元,即使他们的值相等,也会为每个出现的对象分配各自独立的内存单元

例如1:执行a=6.6,b=6.6,会先后为1这个fioat类型对象分配内存单元,然后将a和b分别指向这两个对象,所以a和b执行的不是同一对象

在这里插入图片描述

但是为了提高内存利用效率,对于一些简单的对象,如数值较小的整型(int)对象,Python采取重用对象内存的办法,不会两次为其配内存单元

在这里插入图片描述

而对于较大的数值,Python解释器会为每个出现的对象分配内存单元

在这里插入图片描述

2.Python中的关键字

关键字:就是Python事先定义好的,具有特殊含义的标示符,有时又称保留符。

python中关键字的查看方法如下:
import keyword
print(keyword.kwlist)

在这里插入图片描述

3.Python中的数据类型

1> 整型(int)
>>> a = 1
>>> print(a)
1
>>> type(a)
<class 'int'>

在这里插入图片描述
查看变量的类型:type()

2> 浮点型(float)
>>> b = 1.2
>>> print(b)
1.2
>>> type(b)
<class 'float'>

在这里插入图片描述

3> 字符串型(str)
>>> c = 'sheena'
>>> print(c)
sheena
>>> type(c)
<type 'str'>

在这里插入图片描述
当字符串内使用单引号',且整个字符串用单引号'引用时,字符串内部的单引号'前应加转义字符\转义

>>> c = 'what's'
  File "<stdin>", line 1
    c = 'what's'
              ^
SyntaxError: invalid syntax
>>> print(c)
what's
>>> c = 'what\'s'
>>> print(c)
what's

当字符串内使用单引号',整个字符串可用双引号"引用

>>> c = "what's"
>>> print(c)
what's

在这里插入图片描述

4> bool型(只有两个值:True/False 非0即真)
>>> a = 1
>>> bool(a)
True
>>> bool(0)
False
>>> bool('')		#空
False
>>> bool(' ')		#空格键
True
>>> bool('jay')
True

在这里插入图片描述

4.数据类型之间的转换

(1)整型(int)转换为浮点型(folat)
  • 临时转换
>>> a = 1
>>> type(a)
<type 'int'>
>>> float(a)
1.0
>>> type(a)
<type 'int'>
  • 永久转换
>>> b = float(a)
>>> b
1.0
>>> type(b)
<type 'float'>

在这里插入图片描述

(2)整型(int)转换成字符串型(str)
>>> c = 123
>>> type(c)
<type 'int'>
>>> str(c)
'123'

在这里插入图片描述

(3)字符串型转换成整型(int)
>>> d = '123'
>>> int(d)
123
>>> 

在这里插入图片描述

5.在内存中删除一个变量

格式如下:
del 变量名

>>> del a
>>> a
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'a' is not defined
>>> b
1.0
>>> del b
>>> b
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'b' is not defined

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值