Portál AbcLinuxu, 11. května 2025 04:24

Dotaz: Python - Oprava zápisu funkce print

12.10.2022 14:01 Pavel
Python - Oprava zápisu funkce print
Přečteno: 852×
Odpovědět | Admin
Ahoj, pomohl by mi prosím někdo opravit tento řádek v kódu? Nemůžu na to vážně přijít :( Předem díky.
def printLine(y,x,s,c):
    print("\033[%s;%d;%dH%s"%(y,x,s,c))

printLine(1,1,"Text","1;31m")

Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

12.10.2022 14:27 X
Rozbalit Rozbalit vše Re: Python - Oprava zápisu funkce print
Odpovědět | | Sbalit | Link | Blokovat | Admin
print("\033[{:d};{:d};{}H{}".format(1, 1, 'text1', 'text2'))

Formatovani hodnot pomoci "%" uz se davno nepouziva, pouzij format() a ve funkci mas poradi parametru string-cislo-cislo-string a do funkce cpes cislo-cislo-string-string..
12.10.2022 17:14 Pavel
Rozbalit Rozbalit vše Re: Python - Oprava zápisu funkce print
Díky ale nefunguje to.. ani barvy nefunguji.

výsledek:
ext1Htext2
12.10.2022 17:24 X
Rozbalit Rozbalit vše Re: Python - Oprava zápisu funkce print
Netusim co to ma vypisovat, ale dela presne to co jsi tam napsal.. jaky je tedy cil?
12.10.2022 17:37 Pavel
Rozbalit Rozbalit vše Re: Python - Oprava zápisu funkce print
První a druhý parametr je pozice kurzoru, třetí parametr je řetezec který chci vypsat a poslední parametr je barva toho textu.
12.10.2022 17:50 pet I. | skóre: 13
Rozbalit Rozbalit vše Re: Python - Oprava zápisu funkce print
Jsi-li na linuxu tak podle "man 4 console_codes" je to špatně, jsi-li na něčem jiném tak nastuduj správně ovládací sekvence.
Jendа avatar 12.10.2022 21:49 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Python - Oprava zápisu funkce print
Odpovědět | | Sbalit | Link | Blokovat | Admin
Pozici kurzoru nevím ale barvy dělám takhle:
def cprint(s, color):
  colors = {
    "purple": '\033[95m',
    "blue": '\033[96m',
    "green": '\033[92m',
    "yellow": '\033[93m',
    "red": '\033[91m',
    "ENDC": '\033[0m',
    "BOLD": '\033[1m',
    "UNDERLINE": '\033[4m'
  }

  print(colors[color] + s + colors["ENDC"])

cprint("Královec je Česko", "red")
13.10.2022 15:05 Ja
Rozbalit Rozbalit vše Re: Python - Oprava zápisu funkce print
Odpovědět | | Sbalit | Link | Blokovat | Admin
Hádám, že to má být takhle:
def printLine(y,x,s,c):
    print("\033[%s\033[%d;%dH%s"%(c,y,x,s))

printLine(1,1,"Text","1;31m")
Řešení 1× (Bystroushaak)
13.10.2022 17:03 Ja
Rozbalit Rozbalit vše Re: Python - Oprava zápisu funkce print
Pro modernisty:
def printLine(row, column, text, color):
    print(f"\033[{color}\033[{row};{column}H{text}", end="")
 
printLine(1, 1, "Text", "1;31m")

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.