首页 > 解决方案 > Python OS 打开程序立即关闭

问题描述

我想制作一个模拟病毒的程序。(只是为了拖钓)
我有以下代码:

import random
import os

user_input = int(input("Your number between 0 and 100: "))

if user_input >= 50:
    random_number = random.randint(user_input, 100)
elif user_input <= 49:
    random_number = random.randint(0, user_input)

if user_input <= 100 and user_input >= 0:
    if user_input == random_number:
        print("Luckly")
        print(user_input)
        print(random_number)
    else:
        print("All your programs will be shut down!")
        print(user_input)
        print(random_number)
        shut_down_file = open("shut_down_script.py", "w")
        shut_down_file.write("print('You got hacked!')accept_task = input('Your PC will be shut down! (Press any key): ')")
        shut_down_file.close()
        os.startfile("shut_down_script.py")


我没有错误,但它不起作用。虽然我已经编辑了代码,但shut_down_script程序直接打开和关闭,用户必须输入任何内容

标签: python

解决方案


这很简单。你有一个名为shut_down_script.py. 在这个脚本中,代码是这样的:

print('You got hacked!')accept_task = input('Your PC will be shut down! (Press any key): ')

这行不通。而不是这个,你必须放一个\n. 这形成了一条新线。因此,您的代码必须如下所示:


import random
import os

user_input = int(input("Your number between 0 and 100: "))
    
if user_input >= 50:
    random_number = random.randint(user_input, 100)
elif user_input <= 49:
    random_number = random.randint(0, user_input)
    
if user_input <= 100 and user_input >= 0:
   if user_input == random_number:
        print("Luckly")
        print(user_input)
        print(random_number)
    else:
        print("All your programs will be shut down!")
        print(user_input)
        print(random_number)
        shut_down_file = open("shut_down_script.py", "w")
        shut_down_file.write("print('You got hacked!')\naccept_task = input('Your PC will be shut down! (Press any key): ')")
        shut_down_file.close()
        os.startfile("shut_down_script.py")

所以在...got hacked!')accept_task...a之间\n。像这样:print('You got hacked!')\naccept_task = input('Your PC will be shut down! (Press any key):


推荐阅读