在我的代码中,我遇到了 'Colorama' 模块的两难选择,特别是使用 input() 命令更改了我的线条颜色
In my code I am having a dilemma with the 'Colorama' module specifically changing my line color using the input() command
这是代码:IM 使用 VISUAL STUDIO 代码 BTW
import requests
from colorama import Fore, Style, init
from time import sleep
init()
print(f'{Fore.RED}WELCOME TO JYSKO\'S WEBSITE CHECKER!')
print(f'{Fore.YELLOW}Add my discord: ')
print(f'{Fore.YELLOW}Jy$ko#0420')
def main():
try:
site = input(f'{Fore.RED}Please Enter The Website Here: ')
response = requests.get(site)
requests.get(site)
while True:
if response.status_code == 200:
print(f'{Fore.GREEN}Online!')
sleep(1)
else:
print(f'{Fore.RED}Offline!')
sleep(1)
except:
print(f'{Fore.RED}Unknown Error Occured.')
main()
问题出在名为 'Main()' 的函数中。正如您在前面的代码行中看到的那样,最后使用的颜色是 '{Fore.YELLOW}' 并且在此函数的 input() 命令中我请求颜色 RED
但是执行时仍然出现作为黄色。我已经尝试过该平台上可用的大多数解决方案,并且正在寻求帮助。
执行代码时,这是吐出的内容:
(RED TEXT->)WELCOME TO JYSKO'S WEBSITE CHECKER!
(YELLOW TEXT->)Add my discord:
(YELLOW TEXT->)Jysko#0420
(SUPPOSE TO BE RED BUT RETURNS YELLOW->){Fore.RED}Please Enter The Website Here:
我认为您错过了输入的 f 字符串。
input(f'{Fore.YELLOW}...')
如果字符串开头没有 'f',{Fore.YELLOW} 只会被视为字符串的一部分。但是,对于 f 字符串,花括号内的内容或多或少被视为具有以下内容:
input(Fore.YELLOW + 'your string contents')
编辑:与 OP 合作,发现 Windows 出现奇怪的错误。以上适用于 Mac 和 Linux,但不适用于 Windows - Windows python3.8 上似乎有一个怪癖阻止 colorama 设置input() 中的文本颜色。但是,首先添加打印语句是一种解决方法:
print(Fore.RED, end='') # Changes color, but doesn't add new line
input('original text')
这是代码:IM 使用 VISUAL STUDIO 代码 BTW
import requests
from colorama import Fore, Style, init
from time import sleep
init()
print(f'{Fore.RED}WELCOME TO JYSKO\'S WEBSITE CHECKER!')
print(f'{Fore.YELLOW}Add my discord: ')
print(f'{Fore.YELLOW}Jy$ko#0420')
def main():
try:
site = input(f'{Fore.RED}Please Enter The Website Here: ')
response = requests.get(site)
requests.get(site)
while True:
if response.status_code == 200:
print(f'{Fore.GREEN}Online!')
sleep(1)
else:
print(f'{Fore.RED}Offline!')
sleep(1)
except:
print(f'{Fore.RED}Unknown Error Occured.')
main()
问题出在名为 'Main()' 的函数中。正如您在前面的代码行中看到的那样,最后使用的颜色是 '{Fore.YELLOW}' 并且在此函数的 input() 命令中我请求颜色 RED
但是执行时仍然出现作为黄色。我已经尝试过该平台上可用的大多数解决方案,并且正在寻求帮助。
执行代码时,这是吐出的内容:
(RED TEXT->)WELCOME TO JYSKO'S WEBSITE CHECKER!
(YELLOW TEXT->)Add my discord:
(YELLOW TEXT->)Jysko#0420
(SUPPOSE TO BE RED BUT RETURNS YELLOW->){Fore.RED}Please Enter The Website Here:
我认为您错过了输入的 f 字符串。
input(f'{Fore.YELLOW}...')
如果字符串开头没有 'f',{Fore.YELLOW} 只会被视为字符串的一部分。但是,对于 f 字符串,花括号内的内容或多或少被视为具有以下内容:
input(Fore.YELLOW + 'your string contents')
编辑:与 OP 合作,发现 Windows 出现奇怪的错误。以上适用于 Mac 和 Linux,但不适用于 Windows - Windows python3.8 上似乎有一个怪癖阻止 colorama 设置input() 中的文本颜色。但是,首先添加打印语句是一种解决方法:
print(Fore.RED, end='') # Changes color, but doesn't add new line
input('original text')