Python中数据类型和变量的使用

2023-10-27

常用数据类型

  • 计算机能处理的远远不止数值,还可以处理文本,图形,音频,视频,网页等各种各样的数据,而处理不同的数据,需要使用不同的数据类型来进行表示:
    • 数字型:整型【int】,浮点型【float】,复数【complex】
    • 布尔型:bool,只有两个值,True和False,注意:True可以被当做1使用,False可以被当做0使用
    • 字符串型:str,单引号双引号都一样。
    • 列表:list
    • 元组:tuple
    • 字典:dict
    • 集合:set
    • 字节:bytes
    • 空值:NoneType,只有一个值:None

变量

  • 定义
#一般:变量名 = 变量值
num = 3
#特殊的:说明数据类型,不常用
num : int = 3
#定义多个变量
m1 = m2 = m3 = 100
m1,m2,m3=10,3,1
  • 变量的本质:变量是一种存储数据的载体【容器】
  • 变量相关函数
#获取变量x在内存中的地址
id(x)
#获取之前定义数据在内存中地址
id(数据)
#获取变量x的数据类型
type(x)
  • 与变量相对应的是“常量”,常量中有很多约定的规范
    定义:一个变量当中的值无需发生改变,则将该变量定义为常量。
    命名规范:所有字母大写,不同单词之间下划线链接。
  • python中交换两个变量值的方法
    1、普通:找中间变量
    2、特殊只适合python:
    a,b=b,a
    3、智慧型:
    a=a+b
    b=a-b
    a=a-b
  • python当中的拆包和打包
# a.拆包:将一个容器中的多个数据进行拆分,拆分成不同的部分,拆包就是用“*”实现分的思想。
x,y,*z = 234,45,65,7,8
print(x,y,z)   # 234 45 [65, 7, 8]列表
x,*y,z = 234,45,65,7,8
print(x,y,z)   # 234 [45, 65, 7] 8
*x,y,z = 234,45,65,7,8
print(x,y,z)   # [234, 45, 65] 7 8

a,b,c = [45,7,78]
print(a,b,c)	#45 7 78

# b.打包:将多个零散的数据转换为一个容器,打包就是用“*”实现和的思想。
def test(*num):
    print(num,type(num))  # (34, 56, 56, 67, 8, 8, 89, 89, 80) <class 'tuple'>
test(34,56,56,67,8,8,89,89,80)
  • 变量的删除:如果一个变量被删除,则相当于该变量从内存空间中被销毁
"""
变量的定义:从无到有
变量的删除:从有到无
"""
# 1.定义【开辟空间】
num = 10
print(num)

# 2.删除【销毁变量】 
# 注意1:如果一个变量被删除,则相当于该变量从内存空间中被销毁
# 语法:del 变量名	(delete	v. 删除)
del num
# print(num)  # NameError: name 'num' is not defined

# 3.内存中的变量
name = '小明'
print(name)
name = 'jack'
print(name)

  • python中内存工作原理:
    • 1、python中有个检测器,每隔一段时间就会去回收那些创建之后没有被变量指向的内存空间。
    • 2、当定义一个变量,会在内存中开辟一份空间,当该变量被删除或某个数据没有变量指向它,
      则这些数据都会被系统的垃圾回收机制回收,该被删除的变量或数据所占用的空间会被释放掉,后期可以重复利用,del删除掉的变量所指向空间也会被回收。
  • 变量的类型转换:类型的转换,是为了将一种类型转换为另一种类型
    • str(x):将x转换为字符串
    • int(x):将x转换为整型
    • float(x):将x转换为浮点型
    • bool(x):将x转换为布尔型
# 1.str(x):将x转换为字符串,x可以是任意类型
a1 = 10
print(a1,type(a1))  #10 <class 'int'>
r1 = str(a1)
print(r1,type(r1))  #10 <class 'str'>

# print(str('abc'))

# 2.int(x):将x转换为整型,x可以是float,bool,str
# 如果x是字符串,则x只能由数字和正负号组成,且正负号只能出现在字符串的开头
print(int(34.6))    #34
print(int(34.1))    #34
print(int(True),int(False))  # 1 0  (一般没必要)

print(int('110'))   #110
print(int('+110'))  #110
print(int('-110'))  #-110
# print(int('a110'))  # ValueError: invalid literal for int() with base 10: 'a110'
# print(int('1+10'))  # ValueError: invalid literal for int() with base 10: '1+10'

# 3.float(x):将x转换为浮点型(有点有数字或者有数字就可以转),x可以是int,bool,str
# 如果x是字符串,则x只能由数字,小数点和正负号组成,且正负号只能出现在字符串的开头
print(float(34))    #34.0
print(float(True),float(False)) #1.0 0.0

print(float("234"))     #234.0
print(float(".234"))    #0.234
print(float("2.34"))    #2.34
print(float("234."))    #234.0

print(float("+234."))   #234.0
print(float("-234."))   #-234.0

# print(float("a234."))  # ValueError: could not convert string to float: 'a234.'

# 4.bool(x):将x转换为布尔型,x可以是任意类型
# 结论:但凡是每种数据类型中表示空的情况,通过bool()转换,最终的结果都是False
# 应用:if语句和while循环中作为条件使用
print(bool(0),bool(6))  #False  True
print(bool(0.0),bool(46.7)) #False  True
print(bool(""),bool("fahjga24"))    #False  True
print(bool([]))  #False 空列表
print(bool(()))  #False 空元组
print(bool({}))   #False 空字典
print(bool(None)) #False 空值
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python中数据类型和变量的使用 的相关文章

随机推荐