自我介绍
歪小王: 大家好!欢迎来到《趣玩python基础》第二期,本期我们邀请到Number三兄弟之一的大哥—— Python 界的元老级人物,int 类型!
int: 大家好,叫我 int 就好,很高兴来到这里。
歪小王: int 老师,作为 Python 中最基础的数据类型之一,您能先给大家介绍一下自己吗?
int: 当然可以。我代表的是整数,可以是正整数、负整数,或者 0。 我没有小数点,简单来说,我就是大家小学数学课本里学到的那些整数。比如 1、10、-5、0 都是我。 在 Python 3 中,我可以表示任意大的整数,再也没有大小限制啦!
歪小王: 哇,听起来很简单易懂!那您在 Python 中有什么特长吗?
int: 我的特长就是计算!加减乘除,样样精通!
(int 老师秀出肱二头肌)
歪小王: 哈哈哈,这肌肉!看来 int 老师真的很强壮!那您能给我们展示一下您的计算能力吗?
基础应用
int: 没问题! 比如 1 加 1 等于几?
歪小王: 等于 2!
int: 没错! 还有 10 乘以 5 等于几?
歪小王: 等于 50!
int: 你看,我算得又快又准! 就像这样:
代码语言:javascript复制a = 10
b = 5
print(a b) # 输出:15
print(a - b) # 输出:5
print(a * b) # 输出:50
print(a / b) # 输出:2.0, 注意除法结果是浮点数
print(a // b) # 输出:2, // 表示整除,结果还是整数
print(a % b) # 输出:0, % 表示取余数
print(a ** b) # 输出:100000, ** 表示幂运算
歪小王: 太厉害了!那除了计算,您还有什么其他技能吗?
int: 我还可以变身!我可以变成其他类型,比如浮点数或者字符串。 就像这样:
代码语言:javascript复制# 变成浮点数
a = 10
b = float(a) # b 现在是 10.0
# 变成字符串
c = 5
d = str(c) # d 现在是 "5"
内置函数
除此之外,我还有一些独门秘技,比如:
- abs(a): 获取我的绝对值, 比如 abs(-10) 结果就是 10。
- divmod(a, b): 一次性得到我被 b 除之后的商和余数,比如 divmod(10, 3) 结果就是 (3, 1), 商是 3, 余数是 1。
- pow(a, b): 快速算出我的 b 次方, 比如 pow(2, 3) 结果是 8, 也就是 2 的 3 次方。
- bit_length(a): 返回表示我(整数 a)所需的最小位数, 比如 bin(10) 的结果是 '0b1010',4 位,所以 bit_length(10) 的结果就是 4.
- to_bytes(length, byteorder, *, signed=False): 返回表示我的字节数组,length 参数指定字节数组的长度, byteorder 参数指定字节顺序,可以是 'big' 或者 'little', signed 参数指定是否使用符号位。 比如 (1024).to_bytes(2, byteorder='big') 返回 b'x04x00'。
# abs() 函数
a = -10
b = abs(a) # b 现在是 10
# divmod() 函数
c = 10
d = 3
result = divmod(c, d) # result 是 (3, 1), 商是 3, 余数是 1
# pow() 函数
e = 2
f = pow(e, 3) # f 现在是 8, 也就是 2 的 3 次方
# bit_length() 函数
g = 10
h = g.bit_length() # h 是 4
# to_bytes() 函数
i = 1024
j = i.to_bytes(2, byteorder='big') # j 是 b'x04x00'
实际应用
歪小王: 哇,int 老师,您真是多才多艺!那您在实际的程序中,都能做些什么呢?
int: 哈哈,这个问题问得好!我可是编程界的万金油,哪里都能派上用场! 比如:
- 记录游戏得分: 在游戏中,我可以用 来记录玩家的得分、生命值等等。
- 控制循环次数: 在循环语句中,我可以用 来控制循环执行的次数,比如你想让程序运行 10 次,就可以用我来计数。
- 表示数组索引: 在处理数组时,我可以用 来表示数组元素的位置, 比如你想访问数组的第一个元素,就用索引 0。
- 存储年龄、数量等信息: 在处理用户信息、商品信息等等时,我可以用 来存储年龄、数量、价格等数值信息。
总之,只要是跟数字有关的地方,就少不了我 int!
歪小王: 天哪,您真是太全能了!看来 int 老师不仅实力强大,还非常灵活!
int: 过奖过奖,这都是我应该做的。
歪小王: 好的,感谢 int 老师做客我们的节目!相信大家对 int 类型有了更深入的了解。朋友们,我们下期再见!