我想知道是否有办法在输入行的末尾添加一个字符串。
print('┌──────────────────────────────────────────────────────────┐')
ItemCost = float(input('│Enter item cost: '))
此输出
┌─────────────────────────────────────────────────────────┐
│Enter item cost: xxxx
我希望输出
┌─────────────────────────────────────────────────────────┐
│Enter item cost: xxxx │
(不包括“”中的部分
任何帮助都会得到帮助谢谢
答案 0 :(得分:1)
在写完整行后,您可以使用ANSI转义码重新定位光标。但请注意,由于input
将提示写入标准错误,您可能希望在调用input
时包含这两行。
prompt = ('┌──────────────────────────────────────────────────────────┐\n'
'│Enter item cost: \033[s |\033[u'))
ItemCost = float(input(prompt))
\033[s
告诉终端记住光标的当前位置; \033[u
告诉终端将光标移动到当前记住的位置。
这要求您的终端了解ANSI转义码;更便携的解决方案是使用curses
库。
答案 1 :(得分:0)
以下适用于没有的终端(例如Windows PowerShell):
UPDATE jsontesting
SET jsondata = jsonb_set(
jsondata::jsonb,
array['nestedfield'],
(jsondata->'nestedfield')::jsonb || '["newString"]'::jsonb)
WHERE id = 7;
不幸的是,退格(>>> prompt = '''\
... ┌──────────────────────────────────────────────────────────┐
... │Enter item cost: │''' + 42 * '\b'
>>> item_cost = float(input(prompt))
┌──────────────────────────────────────────────────────────┐
│Enter item cost: 12.5 │
>>> item_cost
12.5
)只能将光标移动到一行上,所以你不能在输入框上放置一个底部并退回到前一行。为此,您必须使用基于'\b'
的方法。