Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Python中将字符打印到控制台上的某个点?_Python_Python 3.x_Printing_Console - Fatal编程技术网

在Python中将字符打印到控制台上的某个点?

在Python中将字符打印到控制台上的某个点?,python,python-3.x,printing,console,Python,Python 3.x,Printing,Console,有没有一种方法可以使用Python(3)将字符打印到控制台上的某个点? 下面是一个关于我努力实现的理想示例: def print_char(x, y, char): # Move console cursor to 'x', 'y' # Set character under cursor to 'char' 我知道这在其他语言中是可能的,那么Python呢?我不介意是否必须使用外部库 我使用的是Windows 7。如果您使用的是UNIX(如果不是,请参见下文),请使用: 只有

有没有一种方法可以使用Python(3)将字符打印到控制台上的某个点? 下面是一个关于我努力实现的理想示例:

def print_char(x, y, char):
    # Move console cursor to 'x', 'y'
    # Set character under cursor to 'char'
我知道这在其他语言中是可能的,那么Python呢?我不介意是否必须使用外部库

我使用的是Windows 7。

如果您使用的是UNIX(如果不是,请参见下文),请使用:


只有用于UNIX平台的Python包包含
curses
模块。但是,如果这不适用于您,请不要担心,因为Windows和Mac OS都有一个名为的移植版本。

如果您的控制台/终端支持ANSI转义字符,那么这是一个很好的非模块解决方案

def打印字符(x,y,char):
打印(“\033[”+str(y)+“;”+str(x)+“H”+char)
您可能需要稍微变换坐标以使其处于正确的位置,但这是可行的。您可以打印任意长度的字符串来代替单个字符。此外,如果您想在清除屏幕之间多次重复执行该函数,您可以这样做

def打印字符(x,y,char):
compstring+=“\033[”+str(y)+“;”+str(x)+“H”+char

然后在执行所有打印字符后打印compstring。这将减少清除屏幕时的闪烁。

您可能最好使用类似的操作系统。对于linux,请使用诅咒(在标准库中).@sweeneyrod Windows 7:/在这种情况下,建议使用UniCourses或控制台模块作为替代方案。忘记提及,我使用的是Windows 7:/@MarkusMeskanen,然后使用我在回答中提到的移植版本。是的,一开始没有看到,谢谢,我会在接受之前尝试一下!:P
import curses

stdscr = curses.initscr()

def print_char(x, y, char):
    stdscr.addch(y, x, char)