1.3变量和赋值
本笔记为阿里云天池龙珠计划SQL训练营的学习内容,链接为:https://tianchi.aliyun.com/specials/promotion/aicampsql
数值变量
numbers(int,long,float,complex)
容器变量
string
list
dictionary
set
tuple
变量使用
1.先赋值后使用
2.不能用数字开头,数字,字母,下划线
3.大小写敏感
1.4数据类型和转换
int float bool
type(a)
返回变量的数据类型
dir(int)
Python 里面万物皆对象(object),整型也不例外,只要是对象,就有相应的属性 (attributes) 和方法(methods)。
返回对象的属性和方法
浮点(float)
引包
使用decimal包中Decimal对象和getcontext()方法实现保留小数位数
import decimal
from decimal import Decimal
decimal.getcontext().prec = 4
b = Decimal(1) / Decimal(3)
print(Decimal(b))
#0.3333
print(b)
#0.3333
a = decimal.getcontext();
print(a)
\# Context(prec=28, rounding=ROUND_HALF_EVEN, Emin=-999999, Emax=999999, capitals=1, clamp=0, flags=[], traps=[InvalidOperation, DivisionByZero, Overflow])
布尔<class ‘bool’>
1.只有俩个值True ,False. 在运算中 True 代表 1,False 代表 0
True + True == 2
False + True == 1
2.类型转换
bool( x )
把变量 x 转换成 布尔型
对于数值变量, 0 , 0.0 都可认为是空的。
对于容器变量,里面没元素就是空的。
类型转换
目标类型(变量)
例:
int(x)
str(x)
有一些可选参数
int()
是一个内置函数,用于将给定的参数转换为整数类型。
它可以接受一个参数 x
,表示要转换为整数的值,以及一个可选参数 base
,表示进制基数,默认为 10。
base 表示 参数 x 是几进制数
str(object=‘’) 一个可选的参数 object
,表示要转换为字符串的对象。如果未提供 object
参数,则默认为空字符串 ''
。
str()
函数会根据不同类型的对象采取不同的转换方式:
- 对于数值类型(如整数、浮点数),它将数字转换为对应的字符串表示。
- 对于字符串类型,它返回与原始字符串相同的字符串。
- 对于布尔类型,它将
True
转换为字符串'True'
,将False
转换为字符串'False'
。 - 对于容器类型(如列表、元组、字典和集合),它将使用适当的格式将其转换为字符串表示。
- 对于自定义对象,它将调用对象的
__str__()
方法(如果定义了)来获取字符串表示。如果未定义__str__()
方法,则会返回对象的默认字符串表示,例如<__main__.ClassName object at 0x...>
。
查看数据类型
-
type(obj)
返回对象的确切类型,不考虑继承关系。 -
isinstance(obj, cls)
检查对象是否是指定类或其子类的实例,考虑继承关系。或者说,
isinstance()会让把父类和子类判断为同一类
type()会判断为他们类别不同
需要注意的是,尽管isinstance()
可以检查对象是否是父类或子类的实例,但在一些特殊情况下,由于多重继承等复杂的继承关系,可能会导致预期之外的结果。因此,在使用isinstance()
时需要谨慎,并确保你理解对象的继承结构。
例子:
class A:
pass
class B(A):
pass
obj1 = B()
obj2 = A()
print(isinstance(obj1, A)) # True
if type(obj1) == type(obj2):
print(True)
else:
print(False)
# False