有些软件在大部分情况下都能正常工作,而有时候则会莫名其妙的崩溃。当然这有可能是因为代码没有写好或没有考虑一些特殊情况,也有可能是系统本身就是这么设计的,目的是要求用户付费,这样的做法虽然不太好,但是也完全可以理解,毕竟软件公司和程序员也要生存。据说(请注意,是据说,不一定是真的)有些病毒本身就是某些杀软公司出品的,目的是卖自己的杀毒软件。
下面的代码模拟了这样的事情,在大部分情况下都能正常工作,而以非常小的概率让程序崩溃并提示用户付费来享受更好的体验。
import random
import time
def main(flag=0):
# flag=0表示为付费用户,1表示付费用户
while True:
# 模拟正常工作
print('I am working.')
time.sleep(1)
# 产生随机数,并以很小的概率让程序崩溃
rnd = random.random()
print(rnd)
# 只对非付费用户显示崩溃信息,其中的数字-3可以调整
if not flat and abs(rnd-0.5) < 1e-3:
lst = []
for i in range(99999999999999):
# 耗尽内存
try:
lst.append(999999999999 ** 9999)
except:
raise Exception('很抱歉,您使用的是未付费软件,请付费解决问题')
main()
运行截图: