相关疑难解决方法(0)

如何在powershell中使用SetConsoleMode更改Console Ouptut模式?

我正在尝试使用Windows API和SetConsoleMode调用更改output(CONOUT$)的Windows控制台模式.所以我修改了一个基于ConinMode.ps1(适用于输入)的PowerShell脚本来执行此操作.使用ConoutMode.exe和我的脚本,读取工作正常,并返回:

# .\ConoutMode.exe
mode: 0x3
ENABLE_PROCESSED_OUTPUT            0x0001 ON
ENABLE_WRAP_AT_EOL_OUTPUT          0x0002 ON
ENABLE_VIRTUAL_TERMINAL_PROCESSING 0x0004 off   <====
DISABLE_NEWLINE_AUTO_RETURN        0x0008 off
ENABLE_LVB_GRID_WORLDWIDE          0x0010 off

# .\ConoutMode.ps1
OK! GetConsoleWindow handle  :  0x1F06D6
Console Input  Mode (CONIN)  :  0x21f
Console Output Mode (CONOUT) :  0x3
Run Code Online (Sandbox Code Playgroud)

但是,我的脚本和exe都无法编写模式.(可能是因为它认为我的输出句柄没有指向控制台?)

在PowerShell中:

# .\ConoutMode.exe set 0x000f
error: SetConsoleMode failed (is stdout a console?)

# .\ConoutMode.ps1 -Mode 7
OK! GetConsoleWindow handle  :  0x1F06D6
old …
Run Code Online (Sandbox Code Playgroud)

powershell winapi console-application windows-console

5
推荐指数
1
解决办法
392
查看次数

Python中的输出替代品

Python中的输出的print语句是否有任何替代方法.
另外,如何将输出文本格式化为彩色编码?

我是初学程序员,对它很新.
谢谢

python

4
推荐指数
1
解决办法
9976
查看次数

Scrapy框架-着色日志记录

我正在尝试使Scrapy输出彩色日志。我对Python日志记录不是很熟悉,但是我的理解是我必须制作自己的Formatter并让Scrapy使用它。我成功制作了一个Formatter,以使用Clint对输出进行着色。

我的问题是我无法使其在Scrapy中正常工作。我本来希望我的Spider中的logger对象有一个处理程序,然后我才应该切换该处理程序的格式化程序。当我查看里面的东西时spider.logger.logger,我看到那handler是一个空列表。我试图将格式化程序添加到新的流处理程序中。

crawler.spider.logger.logger.addHandler(sh) 其中sh是使用我的颜色格式化程序的处理程序。

这增加了效果,使每条消息的草率输出两次。第一条消息是彩色的,但没有Scrapy格式。第二个具有无颜色的Scrapy格式。

如何使Scrapy输出彩色日志保持可在其中设置的相同格式 settings.py

谢谢

python logging colors scrapy

4
推荐指数
1
解决办法
583
查看次数

是否有与Python相同的Term :: ANSIScreen?

Perl拥有出色的模块Term::ANSIScreen,可以进行各种花式光标移动和终端颜色控制.我想重新实现一个目前在Python中用Perl编写的程序,但终端ANSI颜色是其功能的关键.有人知道一个等价的吗?

python perl ansi

3
推荐指数
1
解决办法
1266
查看次数

从文件读取utf-8转义序列

我有一个utf-8编码的文件,其中包含多行,例如

\ x02我不喜欢\ x0307香蕉\ x03。\ x02
嗨,你好吗?
你打过电话了?

如何将文件的行读取到列表中,对所有转义序列进行解码?我尝试了下面的代码:

with codecs.open(file, 'r', encoding='utf-8') as q:
    quotes = q.readlines()

print(str(random.choice(quotes)))
Run Code Online (Sandbox Code Playgroud)

但是它打印行而不解码转义字符。

\ x02我不喜欢\ x0307香蕉\ x03 \ x02

(请注意:转义字符是IRC颜色代码,\x02是加粗文本的字符,并且\x03是颜色代码的前缀。此外,此代码来自我的IRC僵尸程序,其中的MSG功能由代替print()

python utf8-decode python-unicode

2
推荐指数
1
解决办法
2708
查看次数

(Flask-)SQLAlchemy 中的惰性 = 真

我正在学习 SQLAlchemy,我想确保我正确理解了backref参数relationship

例如

from app import db

class User(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(64), unique=True)

    posts = db.relationship('Post', backref='author', lazy=True)


class Post(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    body = db.Column(db.String(140))

    user_id = db.Column(db.Integer, db.ForeignKey('user.id'))
Run Code Online (Sandbox Code Playgroud)

假设我有一个 User 对象j = models.User.query.get(1)。我的问题是,以下事情之间有什么区别吗?

  • j.posts
  • Post.query.filter_by(author=j).all()
  • Post.query.with_parent(j).all()
  • Post.query.with_parent(j, property='posts').all()
  • Post.query.with_parent(j, property=User.posts).all()

返回的结果是一样的,但不知道执行的SQL语句是否相同。

我试过的

SQLAlchemy的文档说:

with_parent(instance, property=None, from_entity=None)

...给定的property可以是None,在这种情况下,将针对此 Query 对象的目标映射器执行搜索。

所以最后三个语句似乎相同,但我真的不明白这个 Query 对象的目标映射器指的是什么。它是Post在这种情况下,执行这个查询Post

python sqlalchemy

2
推荐指数
1
解决办法
3332
查看次数

如何在Python中使文本变为粗体?

我希望能够在Python中将文本更改为粗体.有没有办法做到这一点?

我已经能够使用termcolor更改颜色,但到目前为止还没有使用粗体文本.有没有人尝试过呢?

python format text input

0
推荐指数
1
解决办法
3万
查看次数

读取颜色为python的输入打印

我想用raw_input color打印输入名称下面是代码,它将首先用color打印输入名称,然后在下一行中我正在读取输入。

class bcolors:
   HEADER = '\033[95m'
   OKBLUE = '\033[94m'
   OKGREEN = '\033[92m'
   WARNING = '\033[93m'
   FAIL = '\033[91m'
   ENDC = '\033[0m'
   BOLD = '\033[1m'
   UNDERLINE = '\033[4m'
   print bcolors.WARNING + "Enter name:"  + bcolors.ENDC
   storage_select = raw_input()
Run Code Online (Sandbox Code Playgroud)

但是我想要颜色以下的东西

   a = raw_input("Enter name")
Run Code Online (Sandbox Code Playgroud)

python python-2.7

0
推荐指数
1
解决办法
757
查看次数

给定 #RRGGBB 十六进制值的彩色 Python 输出

我从用户那里得到了 #RRGGBB 十六进制格式的颜色(#D3D3D3浅灰色),我想用它为一些输出着色。我想我编写print("some text", color="#0000FF")并获得蓝色输出。是否有可能(理想情况下没有 3rd 方软件)?

python python-3.x output

0
推荐指数
1
解决办法
2976
查看次数

如何增加控制台中显示的文本大小

我想让我的字体大小只改变一行代码,比如print("Hello World!")的输出更大。因为我正在尝试制作一款小型主机游戏,所以我希望标题足够大。我使用的是 Windows 10。我的代码

print("PENGUIN ADVENTURE")
Run Code Online (Sandbox Code Playgroud)

python

0
推荐指数
1
解决办法
3644
查看次数