首页 > 解决方案 > 我怎样才能回到 Python 3 中的 if 语句?

问题描述

我正在制作一个 Python 程序,我可以在其中处理来自计算机任何部分的文件。它还没有完成,但我遇到了一个问题。这是我的代码:

import os
from os.path import join
import subprocess
def opening_file(lookfor):
    global store_1
    for root, dirs, files in os.walk('/home/'):
        if lookfor in files:
           file = join(root, lookfor)
           store_1.append(join(root, lookfor))
    if len(store_1) <= 0:
        ask_1 = str(input("Your file was not found. Do you want to try again(Y/n)?:"))
        #This is where I have the problem
    elif len(store_1) > 0:
        print("Your file was found")
        subprocess.call(["xdg-open", file])
    #print(store_1)
store_1 = []
print("Welcome to our program for working with files.")
print("Press O for opening and editing a file, C for making a copy of a file. M for moving a file and R for renaming a file. If you are done working with the file, press F to end the program.")
choice = str(input("Your choice:"))
if choice == "O" or choice == "o":
   lookfor = input("File name(make sure to include the extension as well):")
   opening_file(lookfor)

我想知道当找不到文件时如何返回用户使用他/她的输入输入的 if 语句。

有什么办法可以做到这一点吗?我用谷歌搜索,但我找不到解决我的问题的方法。我的操作系统是 Ubuntu 16.04。

标签: pythonpython-3.x

解决方案


只需使用while

import os
from os.path import join
import subprocess
def opening_file(lookfor):
    global store_1
    for root, dirs, files in os.walk('/home/'):
        if lookfor in files:
           file = join(root, lookfor)
           store_1.append(join(root, lookfor))
    if len(store_1) <= 0:
        ask_1 = str(input("Your file was not found. Do you want to try again(Y/n)?:"))
        #This is where I have the problem
    elif len(store_1) > 0:
        print("Your file was found")
        subprocess.call(["xdg-open", file])
    #print(store_1)
store_1 = []
print("Welcome to our program for working with files.")
choice = ""
while(choice.lower() != "f"):
    print("Press O for opening and editing a file, C for making a copy of a file. M for moving a file and R for renaming a file. If you are done working with the file, press F to end the program.")
    choice = str(input("Your choice:"))
    if choice == "O" or choice == "o":
       lookfor = input("File name(make sure to include the extension as well):")
       opening_file(lookfor)

推荐阅读