Python学习笔记2_变量及数据类型

Python学习笔记2_变量及数据类型

  • Python里的数据分为可变数据和不可变数据:
    • 可变数据:列表、集合、字典
    • 不可变数据:字符串、数字、元组
  • 可变数据:修改值,内存地址不会发生变化
  • 不可变数据:修改值,内存地址会发生变化
  • 使用id()函数可以查看变量地址:
s=0
print("变量s的地址为:{}".format(id(s)))

1、数据类型

1)数字类型:整数型(int)、长整型(long)(Python3中已经没有长整型了)、浮点(小数)型(float)、复数型(complex)

2)字符串类型(Str):表示一段字符,使用单引号或双引号包围起来

str="Python"

3)布尔类型(bool):只有两个TureFalse

a=(1==2)	# a的值为False
b=(1<2)		# b的值为True

4)列表类型(list)

days=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"]

5)字典类型(Dict):

person = {'name':'张三','年龄':'18','身高':'180','体重':'52kg'}

6)元组类型(Tuple):

nums = (1,5,3,9,6)

7)集合类型(set):

x = {1,'good','hello',True}
  • 查看数据类型:使用type()函数进行扁蕾数据类型的查看
a = 3
print(type(a))		# 输出出 a 的数据类型
print(type(3.14))	# 输出出3.14的数据类型

注:在Python中,变量是没有数据类型的,我们所说的变量的数据类型是指变量所对应的值的数据类型

2、数据类型转换

1)使用int()转换为整数型

*注:long() 将其他类型转换为长整型;float() 将其他类型转换为浮点型;complex(real [,imag]) 创建一个复数 *

a = '1'
print(int(a))
b = '3.14'
print(int(b,8))		# 将b作为八进制
c = 'abc'
print(int(c,16))		# 将c最为十六进制
# 当字符串超出进制范围就会报错
 d = 'abcdefghijklmn'
 int(d,16)		# k超出16进制所以会报错

2)使用float()转换为浮点型

a='12.23'
print(float(a))	

# 如果字符串不能转换成为有效的浮点型,就会报错
b = 'hello'
print(float(b))

3)使用str()将其他类型转换为字符串

a = 24
b = str(a)

4)使用bool()将其他类型转换为布尔值

注:在Python里只有空字符串’'/“”,数字0,空列表[],空字典{},空元组(),空集合set()和空数据None转换为False,其他的都会被转换为True

print(bool(0))		# False
print(bool(''))		# False
print(bool({}))		# False
print(bool(()))		# False
print(bool([]))		# False
print(bool(None))	# False
print(bool(set()))	# False

5)使用tuple(), ist(), set()将其他类型转换为可迭代对象

注:可迭代对象有:字符串\列表\字典\元组\集合

t = 'hello'
print(tuple(t))	# ('h', 'e', 'l', 'l', 'o')
print(list(t))	# ['h', 'e', 'l', 'l', 'o']
print(set(t))	# {'h', 'e', 'l', 'l', 'o'}

6)Python里面的数据类型转换相关的函数

函数描述
int(x [,base])将x转换为一个整数
long(x [,base] )将x转换为一个长整数
float(x)将x转换到一个浮点数
complex(real [,imag])创建一个复数
str(x)将对象 x 转换为字符串
repr(x)将对象 x 转换为表达式字符串
eval(str)用来计算在字符串中的有效Python表达式,并返回一个对象
tuple(s)将序列 s 转换为一个元组
list(x)将序列 s 转换为一个列表
set(s)转换为可变集合
dict(d)创建一个字典。d 必须是一个序列 (key,value)元组。
frozense(s)转换为不可变集合
chr(x)将一个整数转换为一个字符
unichr(x)将一个整数转换为Unicode字符
ord(x)将一个字符转换为它的整数值
hex(x)将一个整数转换为一个十六进制字符串
oct(x)将一个整数转换为一个八进制字符串

3、eval() 函数

  • eval() 函数用来执行一个字符串表达式,并返回表达式的值。

  • 语法:

    eval(expression[, globals[, locals]])
    
    • expression – 表达式。
    • globals – 变量作用域,全局命名空间,如果被提供,则必须是一个字典对象。
    • locals – 变量作用域,局部命名空间,如果被提供,可以是任何映射对象。
    • 返回表达式计算的结果
>>>x = 7
>>> eval( '3 * x' )
21
>>> eval('pow(2,2)')
4
>>> eval('2 + 2')
4
>>> n=81
>>> eval("n + 4")
85
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值