# 初始化总数为0
total = 0
# 百位:1-4
for i in range(1, 5):
# 十位:1-4
for j in range(1, 5):
# 个位:1-4
for k in range(1, 5):
# 三个数字互不相同
if i != j and j != k and k != i:
num = i * 100 + j * 10 + k
print(num, end=" ") # 横向打印,方便查看
total += 1
# 输出总个数
print("\n总共有:", total, "个")
代码解释:
三层循环
i:代表百位数字(1~4)j:代表十位数字(1~4)k:代表个位数字(1~4)三层循环会遍历所有 4×4×4=64 种组合。
去重条件
if i != j and j != k and k != i
保证百位、十位、个位三个数字都不重复。
组合成三位数
i *100+ j *10+ k
把三个一位数拼成一个三位数(例如 i=1,j=2,k=3 → 123)。
统计总数每找到一个符合条件的数,total 就加 1,最后输出总数。