問題タブ [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.

0 投票する
1 に答える
1275 参照

python - Python は、別のスレッドからの stdout の処理を​​呪います

Python プログラムで 2 つのスレッドを実行しています。1 つのスレッドは Python curses を使用してメニュー システムを実行し、入力を待機します。もう 1 つのスレッドは、メニューの選択に基づいて分析を行い、組み込みprint()関数を介してステータスを出力します。ここでの私の問題は、印刷がcursesでうまく機能しないことcurses.echo()です。オンの場合、入力を待っている行に印刷され、curses.noecho()使用されている場合、出力はまったく表示されません。

出力が表示される場所とタイミングを制御したいので、最初の解決策はwindow.timeout(1000)、次のように入力ループを設定してから、次のようにすることでした。

これは非常にうまく機能し、stdout からの出力を毎秒チェックし、必要に応じてユーザー入力を許可しながらメニューを更新できます。私が抱えている問題は、標準出力をキャプチャして、必要なときに表示する方法がわからないことです。これはまったく可能ですか?

0 投票する
1 に答える
73 参照

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 文字が切り取られ、先頭にドロップされます。

なぜこれが起こっているのか、これを克服するために何ができるのかを誰かが説明できますか?

0 投票する
2 に答える
13732 参照

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) に変更すると、エラーは解消されますが、出力はされません私が欲しいもの。参考までに出力に添付しました。

ここに画像の説明を入力

0 投票する
1 に答える
348 参照

python - TUI と CLI 間の npyscreen トグル オプション

Unix サーバーからファイアウォール デバイスを管理するコンソール アプリケーションを開発しています。コンソール アプリケーションは、python の npyscreen ライブラリに基づいています。ユーザーに提供する必要があるオプションの 1 つは、npyscreen を使用して開発された TUI からデバイス CLI にログインすることです。このためには、UNIX サーバーからデバイスにログインしたら、TUI とデバイス CLI を切り替える必要があります。

誰でも(npyscreenの経験がある)npyscreenでこれを行う方法を教えてもらえますか?

ここでの流れは次のようになります。

  1. デバイスにログインするオプションを選択します (TUI で)
  2. TUI はバックエンド スクリプトを実行してデバイスにログインします。
  3. TUI を使用すると、TUI から CLI モードに切り替えることでデバイス コンソールを表示できます。
  4. ユーザーは、コンソール モードでデバイス上で自分のことを行います
  5. ユーザはデバイス CLI を終了し、TUI に再び着陸します。

どんな助けでも大歓迎です。

よろしくプラディープ

0 投票する
2 に答える
8325 参照

python - Ubuntu の python3 に NCurses をインストールする

のインストールncursesで問題が発生していPython3ます。通常sudo apt-get install ncurses-devの. Python2_Python3

ncursesで働くにはどうすればよいPython3ですか?