Python整数类型 int
简单7整数:Python里的数字小能手
我们在日常生活中经常用到整数:考试得了95分,口袋里还剩3元零花钱,排队时前面有7个人……这些不带小数点的数字,在Python里叫做整数,对应的类型是 int(integer的缩写)。整数可以表示正数、负数,还可以非常大(Python会自动处理超大数字)。学会使用整数,你就能让电脑帮你做各种计算啦!
什么是整数类型?
整数就是像 -10、0、42、1024 这样没有小数部分的数。在Python中,只要直接写数字,默认就是整数类型。比如:
score = 95 # 考试分数,整数
money = 3 # 口袋里的零花钱,整数
count = -7 # 负数表示欠了7块,也是整数
你可以随时用 type() 函数查看一个值的类型:
print(type(95)) # 输出:<class 'int'>
print(type(-7)) # 输出:<class 'int'>
整数的基本运算:像计算器一样方便
Python把整数当成计算器来用,支持加、减、乘、除等运算。但要注意,除法有两种:普通除法 / 会得到小数(浮点数),而地板除法 // 会只保留整数部分(向下取整)。取余数用 %。
看这个例子,你的零花钱是12元,买了5元零食:
a = 12 # 原有零花钱,整数
b = 5 # 零食价格,整数
print(a + b) # 加法:17(如果妈妈再给5元,变成17元)
print(a - b) # 减法:7(买完零食还剩7元)
print(a * b) # 乘法:60(12元买5份零食?不行,这里只是数学计算)
print(a // b) # 整数除法:2(12元最多买2份5元零食,商是2)
print(a % b) # 取余数:2(买2份花10元,剩下2元)
print(a / b) # 普通除法:2.4(结果是小数,不是整数)
重点提醒:/ 和 // 的区别:
12 / 5→2.4(得到浮点数)12 // 5→2(只取整数部分,向下取整)- 如果是负数,
-12 // 5→-3(向下取整,因为 -2.4 向下是 -3)
整数可以非常大:Python不怕大数
像C++、Java等语言中,整数有大小限制(比如最大21亿),但Python的 int 可以无限大(只要内存够)。比如计算10的100次方:
big_num = 10 ** 100 # 10的100次方,1后面100个0
print(big_num) # 输出:10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
你可以用它计算全世界人口、宇宙星星数量……不过要小心,别让程序算太久哦。
把其他类型转换成整数:int()函数
有时候你会遇到一个数字的字符串,比如 "45",想把它当成整数来加。这时可以用 int() 函数转换:
score_str = "95" # 这是字符串,不是整数
score_int = int(score_str) # 转换成整数95
new_score = score_int + 5 # 现在可以做加法了
print("新分数是", new_score) # 输出:100
还可以把浮点数截断成整数(去掉小数部分):
num_float = 3.14
num_int = int(num_float) # 变成3(直接砍掉小数,不是四舍五入)
print(num_int) # 输出:3
新手容易犯的错误
-
误用
/导致得到小数:比如想计算“48元零花钱,每天花8元,能花几天?”应该用//得到整数天数,如果用/会得到6.0(虽然值一样但类型不同)。days = 48 // 8 # 正确:6 days_wrong = 48 / 8 # 得到6.0,是浮点数 -
忘记转换字符串:
input()输入的内容都是字符串,直接做加法会拼接字符串而不是数字。age = input("你几岁?") # 假如输入12 next_year = age + 1 # 错误!会变成字符串 "12" + 1 → 报错正确做法:
age = int(input("你几岁?")) -
除以0:任何整数除以0都会报错。
result = 10 / 0 # 报错:ZeroDivisionError
完整示例:零花钱计算器
下面这段代码模拟了一个小朋友用零花钱买零食的场景,包含了各种整数运算:
# 零花钱计算器
money = 50 # 初始零花钱,整数
candy_price = 3 # 每颗糖的价格,整数
chips_price = 7 # 每包薯片的价格,整数
# 买了5颗糖和2包薯片
candy_total = candy_price * 5 # 3*5=15元
chips_total = chips_price * 2 # 7*2=14元
total_spent = candy_total + chips_total # 总共花了29元
# 计算剩余和能买多少包薯片
remaining = money - total_spent # 还剩21元
max_chips = remaining // chips_price # 最多再买3包薯片(21//7=3)
left_money = remaining % chips_price # 买3包薯片后剩下0元
print("原来有", money, "元")
print("买零食花了", total_spent, "元")
print("还剩", remaining, "元")
print("还能再买", max_chips, "包薯片,剩下", left_money, "元")
# 试试大整数:假如零花钱每天翻倍,10天后有多少?
days = 10
total_money = 2 ** days # 2的10次方=1024元
print("如果每天翻倍,10天后有", total_money, "元")
运行结果:
原来有 50 元
买零食花了 29 元
还剩 21 元
还能再买 3 包薯片,剩下 0 元
如果每天翻倍,10天后有 1024 元
接下来学什么?
整数是我们编程的第一步,学会之后你可以:
- 学习浮点数(float):带小数点的数字,比如
3.5、0.99,用于更精细的计算。 - 学习字符串(str):文本类型,可以和数字相互转换。
- 学习变量:用名字存储数据,让程序更灵活。
- 学习输入输出:用
input()和print()与用户互动。
现在你已经掌握了整数,快去用Python算算你的零花钱怎么花最划算吧!
例题精讲
在Python中,以下哪个选项是一个合法的整数类型?
在Python中,两个整数进行除法运算(使用/)后,结果一定还是整数。
整数类型可以表示正数、负数和零。
请补充代码,使变量a的值为整数10。\na = ___请补充代码,计算两个整数15和4的和,并将结果输出。\nprint(15 ___ 4)