在Python中,如何跳到脚本中的特定行?

-4 投票
2 回答
1669 浏览
提问于 2025-04-17 09:33

我正在写一个脚本,用来打开程序,这里是谷歌浏览器和iTunes。脚本里先是谷歌浏览器,问用户是否想输入密码来启动它。如果用户输入“是”,那么就会要求输入密码等等。不过,iTunes在脚本里要往下几行。那么有没有办法让程序在用户不想启动谷歌浏览器的时候,直接跳到iTunes那部分呢?这是我现在的代码,虽然我知道里面有很多错误,但我会慢慢修复这些问题。

Chrome = raw_input ('Would You Like to Launch Google Chrome' )
if Chrome == 'Yes' or Chrome == 'yes':

pw = 'memebase145'
password = raw_input('Enter Password to Launch Google Chrome: ')

if password == pw:

import os


os.chdir(r'C:\users\Ryan\AppData\Local\Google\Chrome\Application')
os.startfile ('chrome.exe')
print 'Opening Google Chrome!'
else:
print 'Incorrect Password! Try Again!'
password = raw_input ('password: ')
password = raw_input ('password: ')
password = raw_input ('password: ')
password = raw_input ('password: ')
password = raw_input ('password: ')
password = raw_input ('password: ')
password = raw_input ('password: ')
password = raw_input ('password: ')
password = raw_input ('password: ')
password = raw_input ('password: ')
password = raw_input ('password: ')
if Chrome == 'No' or Chrome == 'no':
iTunes = raw_input ('Would you like to open iTunes? ')

if iTunes == 'no' or iTunes == 'No':
raise SystemExit 

else:
word = raw_input ('Second Password for iTunes: ')
if word == 'ohtygd':
import os

os.chdir(r'C:\Program Files (x86)\iTunes')
os.startfile ('iTunes.exe')
print 'Launching iTunes!'
else:
print 'Incorrect Password! Try Again!'
word = raw_input ('Second Password for iTunes: ')
word = raw_input ('Second Password for iTunes: ')
word = raw_input ('Second Password for iTunes: ')
word = raw_input ('Second Password for iTunes: ')
word = raw_input ('Second Password for iTunes: ')
word = raw_input ('Second Password for iTunes: ')
word = raw_input ('Second Password for iTunes: ')
word = raw_input ('Second Password for iTunes: ')
word = raw_input ('Second Password for iTunes: ')
word = raw_input ('Second Password for iTunes: ')
word = raw_input ('Second Password for iTunes: ')
word = raw_input ('Second Password for iTunes: ')
word = raw_input ('Second Password for iTunes: ')
word = raw_input ('Second Password for iTunes: ')
word = raw_input ('Second Password for iTunes: ')

2 个回答

1

把跟两个不同功能相关的代码放在一起,然后根据输入来调用合适的功能。例如:

def Chrome():
    ...
def iTunes():
    ...
if __name__ == "__main__":
    while 1:
        i = raw_input("What would you like to launch?")
        if i.lower() == "chrome":
            Chrome()
        elif i.lower() == "itunes":
             iTunes()
        else:
             print "Unrecognized answer.

密码检测可以写在这些功能里面,或者如果你想要一个主密码的话,先加一个密码检查就可以了。

2

一旦你的代码写对了,不管Chrome是否已经打开,脚本都会询问你是否想要启动iTunes。

下面是一些简单的代码,希望能帮助你入门:

import os

chrome = raw_input ('Would You Like to Launch Google Chrome' )
if chrome.lower() == 'yes':

    pw = 'memebase145'
    password = raw_input('Enter Password to Launch Google Chrome: ')

    while password != pw:
        print 'Incorrect Password! Try Again!'
        password = raw_input ('password: ')

    os.chdir(r'C:\users\Ryan\AppData\Local\Google\Chrome\Application')
    os.startfile ('chrome.exe')
    print 'Opening Google Chrome!'

itunes = raw_input ('Would you like to open iTunes? ')
if itunes.lower() == 'yes':
    word = raw_input ('Second Password for iTunes: ')
    while word != 'ohtygd':
        print 'Incorrect Password! Try Again!'
        word = raw_input ('Second Password for iTunes: ')

    os.chdir(r'C:\Program Files (x86)\iTunes')
    os.startfile ('iTunes.exe')
    print 'Launching iTunes!'

请注意,现在的代码是这样的,如果你尝试启动Chrome或iTunes,你会一直卡在一个循环里,直到你输入正确的密码。我就不帮你解决这个问题了,留给你自己去修复吧。 :)

撰写回答