Как изменить время с True на False в Python? - PullRequest
1 голос
/ 12 мая 2019

Я пытался создать вращающуюся косую черту это , когда мне пришло в голову подумать: "Что? Что мне делать?" об этом коде.

def stat():
    if True:
        driver.get(webs)
        return False


def spin():
    def spinning_cursor():
        while True:
            for cursor in '|/-\\':
                yield cursor

    spinner = spinning_cursor()
    while stat():
        sys.stdout.write(next(spinner))
        sys.stdout.flush()
        time.sleep(0.1)
        sys.stdout.write('\b')

def catch(xpath=xpaths, image_name=image_names):
    try:
        print('Initializing Chrome: ', end="")
        global driver
        driver = webdriver.Chrome()
        spin()

В функции spin(); while stat() Я хочу, чтобы это было правдой, затем, когда stat() закончится, я хочу, чтобы он возвратил ложь, чтобы spin() остановился и catch() продолжился

1 Ответ

1 голос
/ 12 мая 2019

Может быть, вы можете попробовать что-то вроде этого:

def stat():
    if driver.get(webs):
        return False
    else:
        return True


def spin():
    def spinning_cursor():
        while True:
            for cursor in '|/-\\':
                yield cursor

    spinner = spinning_cursor()
    while stat():
        sys.stdout.write(next(spinner))
        sys.stdout.flush()
        time.sleep(0.1)
        sys.stdout.write('\b')

Функция stat() является более явной оценкой Python, если оценка выражения .

Этоозначает, что функцию stat() можно заменить вызовом driver.get(webs) в выражении if:

def spin():
    def spinning_cursor():
        while True:
            for cursor in '|/-\\':
                yield cursor

    spinner = spinning_cursor()
    while driver.get(webs):
        sys.stdout.write(next(spinner))
        sys.stdout.flush()
        time.sleep(0.1)
        sys.stdout.write('\b')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...