Python笔记002——变量与数据类型(转换)
Posted 蓝Builing
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python笔记002——变量与数据类型(转换)相关的知识,希望对你有一定的参考价值。
Python 学习第一课——变量与数据类型
变量 (变量由标识、类型、值组成)
name = 'builing' #声明变量
print(name) #输出变量的值
print('标识', id(name)) #id()获得变量的标识(地址)
print('类型', type(name)) #type()获得变量的类型
print('值', name) #输出变量的值
输出结果:
builing
标识 2200283587248
类型 <class ‘str’>
值 builing
变量赋值 (变量多次赋值后,变量名会指向新的空间)
name = 'Oyang'
print(name, id(name))
输出结果:
Oyang 1968561419248
标识即变量指向的地址改变
数据类型
'''
常用数据类型:
整型 ->int->88
浮点型 ->foat->3.14
布尔型 ->bool->Ture,False
字符串型 ->str->builing好帅啊
'''
整型
n1 = 88
n2 = -88
n3 = 0
print(n1, type(n1))
print(n2, type(n2))
print(n3, type(n3))
输出结果:
88 <class ‘int’>
-88 <class ‘int’>
0 <class ‘int’>
# 二进制(以0b开头)、十进制(默认)、八进制(以0o开头)、十六进制(以0x开头)
print('二进制', 0b101101)
print('十进制', 88)
print('八进制', 0o115)
print('十六进制', 0x888)
输出结果:
二进制 45
十进制 88
八进制 77
十六进制 2184
浮点型
'''
浮点型由整数部分与小数部分组成
浮点数存储不精确
可能出现小数位数不确定的情况(1.1+2.2=3.0000000000000003,1.1+2.1=3.2)
解决方案:导入模块decimal
'''
n4 = 1.1
n5 = 2.2
n6 = 2.1
print(n4 + n5)
print(n6 + n4)
输出结果:
3.3000000000000003
3.2
出现小数位不确定的情况
解决方案:导入模块decimal
from decimal import Decimal
print(Decimal('1.1') + Decimal('2.2'))
输出结果:
3.3
布尔类型(bool) true为真(1) False为假(0)
f1 = True
f2 = False
print(f1, type(f1))
print(f2, type(f2))
输出结果:
True <class ‘bool’>
False <class ‘bool’>
布尔值可以转化为整数计算
print(f1 + 1) # 2
print(f2 + 1) # 1
输出结果:
2
1
字符串型(不可变的字符类型)‘单行’,“单行”,’’‘多行’’’,""“多行”""
str1 = 'builing好帅'
str2 = "Builing好帅"
str3 = '''
Builing
好帅
'''
str4 = """
Builing
好帅
"""
print(str1, type(str1))
print(str2, type(str2))
print(str3, type(str3))
print(str4, type(str4))
输出结果:
builing好帅 <class ‘str’>
Builing好帅 <class ‘str’>
Builing
好帅
<class ‘str’>
Builing
好帅
<class ‘str’>
类型转换
数据类型不同不可进行连接
str()将其他类型转字符串型
age = 20
print(type(age))
# print('我是' + name + ',今年' + age + '岁') # 运行报错
age=str(age)
print('我是' + name + ',今年' + age+ '岁')
print(type(age))
输出结果:
<class ‘int’>
我是Oyang,今年20岁
<class ‘str’>
age的数据类型改变
int()将其他类型转为整型
s1 = '123'
f4 = 99.9
ff = False
s3 = 'hello'
print(type(s1), type(f1), type(s2), type(ff), type(s3))
print(int(s1), type(int(s1))) # 将str转为整型
print(int(f4), type(int(f4))) # 将float转为int型
# print(int(s2), type(int(s2))) # 将str转为int类型,报错,字符串为小数串
print(int(ff), type(int(ff)))
# print(int(s3), type(int(s3))) # 报错,将str转为int型,字符串必须为整数串
输出结果:
<class ‘str’> <class ‘bool’> <class ‘str’> <class ‘bool’> <class ‘str’>
123 <class ‘int’>
99 <class ‘int’>
0 <class ‘int’>
float()将其他类型转为float型
print(type(s1), type(f4), type(s2), type(ff), type(s3))
print(float(s1), type(float(s1)))
print(float(f4), type(float(f4)))
print(float(s2), type(float(s2)))
# print(float(s3), type(s3)) # 字符串中的数据如果是非数字,则不允许转换
输出结果:
<class ‘str’> <class ‘float’> <class ‘str’> <class ‘bool’> <class ‘str’>
123.0 <class ‘float’>
99.9 <class ‘float’>
66.66 <class ‘float’>
以上是关于Python笔记002——变量与数据类型(转换)的主要内容,如果未能解决你的问题,请参考以下文章