0


Python番外篇:电脑读心术程序 快给你的同事朋友玩一玩

hello,大家好,我是wangzirui32,今天我们来学习如何写一个电脑读心术程序,开始学习吧!

1. 原理介绍

本程序使用的读心术原理为吉普赛读心术,流程如下:

  1. 10~99之间任意挑选一个数
  2. 用这个数先减去它自己的十位数再减去它的个位数
  3. 把结果在一个表中找到对应的字母
  4. 水晶球(电脑)会显示你心里想的那个字母

原理是这样的,10~99之间的数减去个位,再减去十位,一定是9的倍数,如32,减去3再减2是27,然后输出的表中只要把每个9的倍数全部替换为相同的字母,就可以实现100%读出你内心的数了!

2. 编写代码

本程序使用pyttsx3进行语音输出,不了解的同学请跳转到之前的一篇博文学习,代码:

import random
import time
import pyttsx3

# 初始化
engine = pyttsx3.init()# 设置随机数种子为当前时间戳
random.seed(time.time())# 字母表
words ="qwertyuiopasdfghjklzxcvbnm"# 随机选择一个字母作为结果
answer_word = random.choice(words)# 输出消息的封装函数defoutput_message(message):print(message)
    engine.say(message)
    engine.runAndWait()

output_message("请你在10~99之间随机选择一个数,给你2秒")
time.sleep(2)
output_message("想好了吗?现在,请将这个数减去个位,再减去十位,并且在下面的列表中找到结果对应的字母,")
output_message("如果找到了,请按回车键继续!")# 输出100个数对应的字母for i inrange(1,101):if i %9==0:# 如果为9的倍数# 输出固定字母print("{} 对应 {}".format(i, answer_word))else:print("{} 对应 {}".format(i, random.choice(words)))

wait =input("如果找到了,请按回车键继续")
output_message("好了,现在请把这个字母在心中默念3遍。")
time.sleep(2)
output_message("电脑已经知道了你的字母,就是...")
time.sleep(2)
output_message(answer_word)
output_message("对吗?")

3. 玩一玩

我想的数是67,结果如下:

请你在10~99之间随机选择一个数,给你2秒
想好了吗?现在,请将这个数减去个位,再减去十位,并且在下面的列表中找到结果对应的字母,
如果找到了,请按回车键继续!
1 对应 z
2 对应 g
3 对应 y
......53 对应 i
54 对应 f    # 我的计算结果55 对应 u
.......98 对应 l
99 对应 f
100 对应 c
如果找到了,请按回车键继续
好了,现在请把这个字母在心中默念3遍。
电脑已经知道了你的字母,就是...
f
对吗?

结果还真是对的!赶快给你的同事朋友玩一玩吧!


好了,今天的课程就到这里,我是wangzirui32,喜欢的可以点个收藏和关注,我们下次再见!

标签: python

本文转载自: https://blog.csdn.net/wangzirui32/article/details/118863117
版权归原作者 wangzirui32 所有, 如有侵权,请联系我们删除。

“Python番外篇:电脑读心术程序 快给你的同事朋友玩一玩”的评论:

还没有评论