ラズパイ3 ModelB にて pythonを学習を始めてます。
本の通りの プログラムを打ち込みましたが、実行するとエラーになって進みません。
どうもライブラリの設定関係と思われますが、初心者には手に負えません。
教えていただくようお願いいたします。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
以下プログラムですが、エラーに関係なさそうなところは略してます
#! /usr/bin/env python3
import curses キー操作を行うためのライブラリを読み込みます
stdscr = curses.initscr() キー入力を行うオブジェクトを生成します
c = stdscr.getch() キー入力を読み込みます
if ( c == ord(‘a’)) 略
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
エラーメッセージ
File “<string>”, line13 ,in <module>
File “/usr/lib/pyton3.9/curses/ init ,py”, line29 in initscr
setupterm(term=_os.environ.get(“TERM”,”unknown”),
_curses.error : setupterm: could not find terminal
No.1ベストアンサー
- 回答日時:
「環境変数 TERM」で検索してみてください。
文字端末は、通常は出力した文字は、現在のカーソル位置に、そのまま表示され、カーソルが一つ右へ(右端を越えたら次の行の先頭へ)移動します。
ですが特殊な文字列を出力すると、表示の代わりに特殊な効果が表われます。(カーソルを任意の箇所へ移動する、表示色が変わる等)
この特殊な文字列を「エスケープシーケンス」と呼んだりします。
文字端末を使ったエディタ(vi,nano等)は、このエスケープシーケンスを使って画面表示を制御しています。
エスケープシーケンスは端末の種類や設定によって違います。
そのため、ある端末向けの色を変えるエスケープシーケンスを出力したら、それに対応していない端末で文字化けした、なんてことが発生します。
そこで、プログラム側で「色を変える命令」を実行したら、端末によって適切なエスケープシーケンスを出力されるような仕組みを用意しました。
それの一つがcursesです。PythonのcursesモジュールはこのcursesをPythonから使うためのモジュールです。
端末毎の設定はtermcapまたはterminfoというデータベースに保存されています。
これらのデータベースから現在の端末に合わせた情報を探します。
このとき、一般に環境変数TERMに設定されたもので検索します。
>_curses.error : setupterm: could not find terminal
とあるように、指定した端末に該当するデータベースが無かった、ということのようです。
>setupterm(term=_os.environ.get(“TERM”,”unknown”),
とあるので、環境変数TERMを参照しています。
このことから、考えられるのは
(1)環境変数TERMが不適切
(2)termcapまたはterminfoの情報不足
です。
よほど特殊な端末でなければ(2)は考えられないので、(1)でしょう。
環境変数TERMを適切の設定してください
ご回答ありがとうございます。 仕事を持っていまして、結果を試すまでに、1から2日ほど下さい。
ただ本のサンプルプロには、TERMなどと言う記述は全くないので、ご教示の「TERM」をネットで調べてからになります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 高校受験 数学 2 2 2 2 ーー + ーー + ーー+ーー 3×5 5×7 7×9 9×11 ーーは1本の 2 2022/04/08 20:40
- 計算機科学 Pythonに関する質問です。 1 2022/12/04 10:55
- 洋楽 たーたーたーー、たたたーーたたーーたたー。 みたいな音楽から始まってクラブ(マルタのしか分からないの 3 2022/05/23 06:02
- クラシック クラシックの曲の名前を教えてください 3 2022/07/01 21:19
- セックスレス 台湾の女性とsexをしたのですが 最初から最後まで あーー はぁーー あああー という 言葉?みたい 2 2022/06/20 11:05
- その他(プログラミング・Web制作) Pythonのライブラリ、randomについて 3 2022/09/20 14:30
- 銀行・ネットバンキング・信用金庫 銀行などでの、出資とはどういう意味なんでしょうか? 全く無知ですみません(ーー;) 5 2022/07/19 10:35
- 友達・仲間 最近、友達やママ友って必要ないよなーーと感じています 前もって会う約束しても前日に高確率でキャンセル 4 2022/06/23 19:18
- オーケストラ・合唱 曲名がわかりません。 鼻歌検索しても出てこないし、街で聞いたのか映画で聞いたのかもなにもわからないで 1 2022/05/29 23:28
- 掃除機・クリーナー・空気清浄機 ダイソンで大損 6 2022/05/07 10:56
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
End Sub が必要です。
-
解説サイトに従ったfortran並列...
-
typedef による2重定義
-
intel fortranのエラーで困って...
-
#ifndefとかヘッダファイルにつ...
-
テンプレートクラス中のフレン...
-
2つのマクロでチェックボックス...
-
Excel・Word リサーチ機能を無...
-
UserForm1.Showでエラーになり...
-
Excel マクロ VBA プロシー...
-
一つのTeratermのマクロで複数...
-
特定文字のある行の前に空白行...
-
特定のPCだけ動作しないVBAマク...
-
メッセージボックスのOKボタ...
-
VBAでfunctionを利用しようとし...
-
教えて下さい
-
VBAでカタカナ→ローマ字の変換...
-
エクセルで別のセルにあるふり...
-
配列数式の解除
-
エクセルに張り付けた写真のフ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
End Sub が必要です。
-
pythonの条件分岐(if)
-
Excel VABについて 下記記述が...
-
43:syntax error at end of input
-
フォートランのエラーについて...
-
intel fortranのエラーで困って...
-
他クラスからForm1内コントロル...
-
Excel VBA: UserForm.Show で実...
-
AccessVBAでVLookupを使いたい
-
対応する関数ヘッダーがありません
-
VB2005でOCXを動的に呼び出すに...
-
C# IEnumerable が IEnumerable...
-
ラズパイ上の、pythonのエラー...
-
コンパイルで未定義のシンボル
-
select関数の使用方法について
-
HEW3とBorlandC++でクラス定義...
-
構造体のポインタ参照
-
VB.NETのStructureの使い方を教...
-
waveOutProc関数での定義
-
フォートラン(fortran)のエラー...
おすすめ情報
補足 2023/4/16
ご回答ありがとうございました。環境変数TERMというのは、私の力ではどうすればいいのか、ネット情報を見ても分かりませんでした。
私の実行環境はラズパイのThonnyだったのですが、ご教示のcursesと言うのが悪いとすれば、CUI環境でPython3を動作させれば変わるかと思い、やってみました。
しかし 「python3 ソースファイル名」 を打ち込んでも無応答になるばかりでした。
念のため、ファイルの中身に簡単なprint命令だけを入れて、実行させると正しく動作しますので、やはりソースの内容が悪いという事だと思います。
プログラムソースから、キーボード入力を受ける部分を仕様変更改造して、タクトスイッチをonする仕様にするなどして、先へ進む予定です。