随机生成六组四码,用程序设计验证奖号出号频次,寻找其中大概率出现频次段,有朝这方面研究的同仁请联系我或留言一起探讨交流。
以193期开876为例:
# 定义六个条件集合
cond1 = {1, 2, 3, 4} # a (百位)
cond2 = {1, 6, 7 8} # b (十位)
cond3 = {0, 1, 5, 9} # c (个位)
cond4 = {2, 5, 7, 9} # d
cond5 = {1, 3, 5, 8} # e (与cond3相同)
cond6 = {0, 4, 5, 6} # f
combinations = [
"123", "124", "125", "126", "134", "135", "136", "145", "146", "156",
"234", "235", "236", "245", "246", "256", "345", "346", "356", "456"
]
cond_mapp= {
"1": cond1, "2": cond2, "3": cond3,
"4": cond4, "5": cond5, "6": cond6
}
all_numbers = []
# 遍历每种组合
for combbo in combinations:
# 获取当前组合的百位、十位、个位对应的集合
a_set = cond_map[combo[0]] # 百位集合
b_set = cond_map[combo[1]] # 十位集合
c_set = cond_map[combo[2]] # 个位集合
for a in a_set:
for b in b_set:
for c in c_set:
num = a * 100 + b * 10 + c # 计算三位数
all_numbers.append(num)
# 统计876出现的次数
count_876 = all_numbers.count(876)
# 筛选出现1次以上的数字(按000-999排序)
from collections import Counter
frequency = Counter(all_numbers)
filtered_numbers = sorted([
num for num, count in frequency.items() if count >= 1
])
# 打印结果
print("按顺序生成的所有数字(前20个示例):")
print(all_numbers[:20])
print("\n出现1-15次以上的数字(按数字大小排序):")
print(filtered_numbers)
print(f"\n数字 876 出现的次数: {count_876}")
:ls61 :ls61 :ls61 :ls61
:ls61 :ls61 :ls61 :ls61