アプリ版:「スタンプのみでお礼する」機能のリリースについて

Pythonについてです。
中間記法を逆ポーランド記法へ変換するにはどうしたら良いですか?

質問者からの補足コメント

A 回答 (16件中1~10件)

> UsageErrorというものが出てきました



ふーむ。困ったね。
DOS窓でそのディレクトリに移動出来るかしら?cdコマンドを使って。
そこに移動出来ればPythonを起動出来ると思うんだけど。

例えば

C:\User\ユーザー名

にいるとして、\Userフォルダに移動する場合は

cd ../

と打つ。
ユーザー名の下フォルダに移動したい場合は

cd フォルダ名

って打ちます・・・分かるかなぁ。
そうやってos.getcwdで得られた場所に移動すれば、pythonって打てばpythonが起動せなおかしいんですけどね。

まぁ、どうしても難しい、ってのならしょーがないんで、明日学校でやってみるしかないかなぁ。
    • good
    • 0
この回答へのお礼

今の私の力じゃ難しいですね…

長々と親身に付き合っていただき本当にありがとうございました。
解決できず歯がゆいですが、明日以降も引き続き頑張ってみようと思います。

感謝いたしますm(_ _)m

お礼日時:2021/07/26 00:11

あ、あと、じゃなければ。



Spider起動してipython上で、

import os

ってまずは打つ。
その後、

os.getcwd()

って打つ。
そうすると、Pythonがインストールされてて、実行されるカレントディレクトリが表示される筈です。(C:\なんとか\かんとか\はらほろ\ひれはれ みたいに表示される筈)
一応確認しておいて下さい。

そのフォルダにPythonコードをコピペしたpyファイルを放り込む。
で、名前が例えば infix2RPN.py だったらiPython上で

%load infix2RPN.py

と打つ。
成功すればプログラムテキストがガーッと表示されると思います。
一回リターンを打てば入力待ち状態になるんで、そうしたら好きな数式打ってみてください。
    • good
    • 1
この回答へのお礼

DOS窓での試みもダメでした

今仰られたos.getcwd()というものもやってみましたが、ディレクトリが表示されるまでは言われた通りなのですが、その後指定のフォルダにpyファイルを入れ%loadを打ち込んでみましたが、
UsageErrorというものが出てきましたね…

お礼日時:2021/07/25 23:43

> ファイル名は内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチファイルとして認識されません。


>と表示されました

あ、そう。
困ったね。
そうか、Spyderでインストールしてると、Python本体にパスが通ってないのか。
クソ、しちめんどくせぇなぁ(笑)。

ちょっと一回、DOS窓から

C:\User\ユーザー名> python

って打ってみてもらえますか?
それで起動しないのなら本当に諦めるしかないかもしんない。

仮にPythonって打ってPythonが起動するなら、一回quitして、今度は

C:\User\ユーザー名> python ファイル名.py

で起動する筈なんですが。
    • good
    • 0

> 色々と教えて頂いたにも関わらずこちらで解決できず情けない限りです



まぁだから、一旦DOS窓でどうなるのか見てみれば良いとは思いますよ。
しょーがないんで、原点回帰、です。

DOSプロンプト:
https://www.k-cube.co.jp/wakaba/server/dos_promp …

多分、DOS窓のデフォルトのディレクトリは

C:\User\ユーザー名

なんで、そこにPythonコードをコピペしたファイルを作って適当に名付けて保存します(拡張子は.py、で例えばinfix2RPN.pyとか名付ける)。
で、そこで

C:\User\ユーザー名> 適当に名付けたファイル名.py

と打ちます。最初の部分はプロンプトなんで「適当に名付けた〜」から打てば良いです。
仮にinfix2RPN.pyと名付けてたら

C:\User\ユーザー名> infix2RPN.py

と打ってリターンキー、ないしはEnterキーを叩きます。
そうすればプログラムが走り出すんで、好きな数式を打ち込んで結果を見てみて下さい。
    • good
    • 0
この回答へのお礼

やってみた結果ですが、
ファイル名は内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチファイルとして認識されません。
と表示されました

お礼日時:2021/07/25 23:08

> ちゃんと保存してから実行してるのですが、ダメですね



ふーむ、今までPythonのプログラムを書いてた時は問題無かったんですかね?

じゃなければ、単純にインタプリタ(iPython)とIDEの連携が取れてないんじゃないかなぁ・・・・・・。

例えばこれ

Spyderのごくごく簡単な使い方:
http://freesia.arch.ues.tmu.ac.jp/Lecture/python …

に従って使ってみたら上手く行きますかね?
行かないんだったら、多分どっかぶっ壊れてるんですよ。
その場合、一旦アンインストールして、もう一回インストールしなおした方が良いかもしれません。
    • good
    • 0
この回答へのお礼

今までは問題なかったですね

アンインストールも試しましたが、治りません

明日、学校の方のpcで再度試してみます。
色々と教えて頂いたにも関わらずこちらで解決できず情けない限りです

お礼日時:2021/07/25 22:30

> 実は私が学んでいる学校がAnacondaやspyderを使うように指導しているのでそれに従っている形なのです。



だろうねぇ。
ぶっちゃけ、ロクな事薦めない学校が多いようで、こっちもビックリしてるんですよ(笑)。
あなたが迷うのなら、同級生もかなりの確率で迷ってる筈です。
そうすると、薦める以上、生徒のサポートしなきゃいけない筈なんですが、してんのか、とか思うんですよねぇ。

一応、念の為確認しておきますが、コピペして作ったファイルは名前を付けて保存してますか?
IDLEもそうなんだけど、ファイルを保存せずに実行しようとすると、Pythonだと上手く行かないんで。
(実はPythonでは、内部的には一旦ファイルをコンパイルする仕様になってるんでそういう仕組みを採用してる)
    • good
    • 0
この回答へのお礼

正直、学校側はあまり丁寧な指導では無いですね…

貴方みたいな方が指導者にいたら良かったのですが…

ちゃんと保存してから実行してるのですが、ダメですね
諦めた方が良さそうですかね…

お礼日時:2021/07/25 21:46

いや、runfileじゃなくって%run ファイル名です。

%も入ります。
写真みたいにして打ちます。

> 私が初心者なこともあり

まぁ、ぶっちゃけ、プログラムの問題じゃなくってIDEの問題なんですよね。
ハッキリ言うけど、プログラミング初心者の状態で、AnacondaとかSpyderとかJupyterとかVisual Studio Codeを導入するのは間違ってるんですよ。
今回のように「プログラミングと全然関係ないトコで」引っかかって全然進まない、とかなっちゃう。使ってるIDEを「キチンとマニュアル読んで使い方を理解しないと」クソややこしい事になっちゃう。
平たく言うと、Python付属のIDLE使った方が一番安全だしラクなんです。
でも不用意に初心者に本格的なIDE導入させるからおかしな事になっちゃうんですよね。

まぁ、いずれにせよ、本来だったら、

1. プログラムを書いたらファイルをキチンと保存する。ファイルをパソコン上のどこに保存したのか出来れば記憶/記録しておく
2. DOS窓等の端末の使い方を覚える。
3. DOS窓で目的のファイルが保存されている場所に移動(cdコマンド)してそのプログラムファイルを実行する。

cdコマンドの使い方を簡単にご紹介【Windowsコマンド集】:
https://eng-entrance.com/windows-command-cd

とそれなりの手間がかかるんですが、Python付属のIDLEだったら簡易にプログラムを走らせる事が出来ます。

もしだったら、一回、Spyderとか使うのを諦めてPython公式からPythonを別途ダウンロード/インストールした方が良いかもしんない。

Python Release Python 3.9.6:
https://www.python.org/downloads/release/python- …

そうしたら、IDLEもまとめてインストールされるので、Spyderで陥ったようなややこしい事にならんですよ。
「Pythonについてです。 中間記法を逆」の回答画像10
    • good
    • 0
この回答へのお礼

iPythonへの%の書き込みできないみたいです…

色々とご親切に説明ありがとうございます。

実は私が学んでいる学校がAnacondaやspyderを使うように指導しているのでそれに従っている形なのです。

そして今やっているプログラムを課題として出されているのですが上手くいかず困っている状況です

お礼日時:2021/07/25 21:19

> Invalid character in identifier



どっかに全角文字、あるいは全角スペース、全角コロン(:)とか紛れ込んでるんじゃないかなぁ・・・。
昔のPythonだと、コメント内に日本語書いたらエラーで引っかかるってのは良くあったんだけど・・・・。
場合によってはコメント消した方が良いかも。

ちと待った。
一旦、コピペしなおそうか。
教えて!gooからコピペ最初にしたのなら、どっかインデントの修正に手違いがあったのかも。

https://paiza.io/projects/ys4Oxhz3vSzVyH5TVPKjJQ

ここからコピペし直してみて下さい。

それで、Spyder上のインタプリタ(iPython)に記述が可能なら、ファイル名を利用して

%run ファイル名.py

って実行させた方が早いかも。

いずれにせよ、(久々のPythonならではの)日本語の全角文字が引っかかってる可能性があるんで、最初にコメント消去してみて・・・ってやって上手く行かなかったら新たにコピペ、ってやってみて下さい。
    • good
    • 0
この回答へのお礼

指定のようにコピペし直してみたのですが、今度は画像のように計算結果すら出なくなりました…
お手間取らせてしまい申し訳ありません
私が初心者なこともあり、諦めた方がよさそうなら諦めます

お礼日時:2021/07/25 20:53

うむ、正直分からん(笑)。



ぶっちゃけて言うと、だからプログラミング初心者がIDEなんて導入すると面倒なだけ、なんだよなぁ。

じゃあね、ちょっと次の事試してみて。

1. 1行目のシェバングを

#!/usr/bin/env python

を消去する。

2. ケツの

if __name__ == '__main__':

を消去する。

3.

 print(" ".join(infix2RPN(input().split(" "))))

のインデントを消去して前詰めして

print(" ".join(infix2RPN(input().split(" "))))

とする。
場合によっては

とやってみて、それから▶ボタン押してください。
    • good
    • 1
この回答へのお礼

変わらないですね…ちなみに画像のように上部のoperator部分がこのようにエラーのように表示されます

お礼日時:2021/07/25 19:43

あ、これはiPythonの出力結果で、スクリプト読み込んでねぇなぁ・・・・・・。



そのIDE(Spider)の上部に三角ボタン(▶みてぇなの)無いかしら?
それクリックしてもそうなってんのかな?
    • good
    • 0
この回答へのお礼

毎回それをクリックして実行してるのですが、こうなってしまうんですよね

お礼日時:2021/07/25 16:47

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!