問題タブ [python-curses]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Python は、別のスレッドからの stdout の処理を呪います
Python プログラムで 2 つのスレッドを実行しています。1 つのスレッドは Python curses を使用してメニュー システムを実行し、入力を待機します。もう 1 つのスレッドは、メニューの選択に基づいて分析を行い、組み込みprint()
関数を介してステータスを出力します。ここでの私の問題は、印刷がcursesでうまく機能しないことcurses.echo()
です。オンの場合、入力を待っている行に印刷され、curses.noecho()
使用されている場合、出力はまったく表示されません。
出力が表示される場所とタイミングを制御したいので、最初の解決策はwindow.timeout(1000)
、次のように入力ループを設定してから、次のようにすることでした。
これは非常にうまく機能し、stdout からの出力を毎秒チェックし、必要に応じてユーザー入力を許可しながらメニューを更新できます。私が抱えている問題は、標準出力をキャプチャして、必要なときに表示する方法がわからないことです。これはまったく可能ですか?
python - curses を使用した Python での文字列スライス
ノート。この質問は、最初に codereview に提出されたコードに関連しています
https://codereview.stackexchange.com/questions/101011/mengenlehreuhr-in-pythonの元のリンクを参照してください
だから私は時計を書いた。単なる時計ではありません。この時計の目的は、クリプトス セクション K4をクラックすることです。
アプリケーションの完全なソースは現在GitHubにありますが、私が経験している特定の問題は次の方法に関連しています。
この問題は次のように説明されています。
self.index < len(self.time_decipher.ciphertext)
(97 文字) の場合、強調表示は期待どおりに機能します。
ただし、self.index == ~96
これを見ると:
基本的に、印刷された文字列の末尾から最後の 2 文字が切り取られ、先頭にドロップされます。
なぜこれが起こっているのか、これを克服するために何ができるのかを誰かが説明できますか?
python - _curses.error: addstr() が ERR を返しました
Python を使用して、スペースバーを押すたびに入力されたすべての文字を「a」に変換するスクリプトを作成しようとしています。たとえば、「python」と入力してからスペースを入力すると、「python」は「aaaaaa」に変換されます。
上記のコードは 1 行目では問題なく動作しますが、2 行目でスペースバーを押すたびに、22 行目で「_curses.error: addstr() が ERR を返しました」というエラーが表示されます。
編集: screen.addstr(dim[0],dim 1 -count-1, h) を screen.addstr(dim[0],dim 1 -count, h) に変更すると、エラーは解消されますが、出力はされません私が欲しいもの。参考までに出力に添付しました。
python - TUI と CLI 間の npyscreen トグル オプション
Unix サーバーからファイアウォール デバイスを管理するコンソール アプリケーションを開発しています。コンソール アプリケーションは、python の npyscreen ライブラリに基づいています。ユーザーに提供する必要があるオプションの 1 つは、npyscreen を使用して開発された TUI からデバイス CLI にログインすることです。このためには、UNIX サーバーからデバイスにログインしたら、TUI とデバイス CLI を切り替える必要があります。
誰でも(npyscreenの経験がある)npyscreenでこれを行う方法を教えてもらえますか?
ここでの流れは次のようになります。
- デバイスにログインするオプションを選択します (TUI で)
- TUI はバックエンド スクリプトを実行してデバイスにログインします。
- TUI を使用すると、TUI から CLI モードに切り替えることでデバイス コンソールを表示できます。
- ユーザーは、コンソール モードでデバイス上で自分のことを行います
- ユーザはデバイス CLI を終了し、TUI に再び着陸します。
どんな助けでも大歓迎です。
よろしくプラディープ
python - Ubuntu の python3 に NCurses をインストールする
のインストールncurses
で問題が発生していPython3
ます。通常sudo apt-get install ncurses-dev
の. Python2
_Python3
ncurses
で働くにはどうすればよいPython3
ですか?