Przepisując kod z python 2 na python 3 napotkałem na pewną zmianę z którą nie mogę sobie poradzić. Wywołanie linii powoduję, że zamiast zwrócić mi string otrzymuję coś takiego: b'string' z tego co wyczytałem to w python 3 zamiast stringów zwracane są dane w formie bitów i można je przekonwertować na string natomiast po przekonwertowaniu i próbie porównania ze stringiem błędu nie ma ale porównanie nie działa... Kod wygląda tak:
check = subprocess.check_output("xrandr | grep 1680x1050 | cut -c 4-12 | tail -n1", shell=True)
print(check) #zwraca b'1680x1050'
check = check.decode("utf-8")
check = str(check)
print(check) #zwraca 1680x1050
if check == "1680x1050":
print("Monitor") #to juz sie nie wyswietla...