はじめまして、python(というかプログラミング自体)を勉強し始めて間もないものです。
小さい参考書を読みながら勉強をしています。本に書いてあるコードを書きながらふと、ほかの辞書から値や、宣言した変数を持ってきて新しい辞書型に入れるにはどうしたらいいのかと思い質問させていただきます。
たとえば、
fruits_dict = {'apple':100,"orange":150}
kudamono = fruits_dict['orange']
furutsu_dict = {"ringo":110, "orenji:kudamono","banana":fruits_dict["apple"]}
としたいのですが、シンタックスエラーが出ます。
プログラミング初心者なので、意味不明なことを言っているかもしれませんが、趣旨はご理解いただけたでしょうか。
どうすればよいでしょうか。よろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
Syntax Errorでは、その前後にもっと詳しい内容が書いてあります。
また、エラーになった箇所を ^ で知らせてくれます。
"orenji:kudamono",
の終わりのカンマの下に ^ が表示されているのでは?
辞書の初期化は { キー:値, キー:値, .... }
と
キー : 値
のセットをカンマで継げたような書式になります。
ところが
"orenji:kudamono"
は「ただの文字列」です。キーと値に分かれていません。
なお。
Pythonでは、ダブルクオーテーション( " ) とシングルクオーテーション( ' ) とで違いは(ほとんど)ありません。
違いは、
・ " で囲った文字列には " 自身を直接書くことはできない(\"等とする等の工夫が必要)だが ' は直接書ける
・ 'はその逆
ということだけです。
No.1
- 回答日時:
>どうすればよいでしょうか。
下記のように修正すると通るかと思います。
・fruits_dict = {'apple':100,"orange":150}
→ fruits_dict = {"apple":100,"orange":150}
・kudamono = fruits_dict['orange']
→ kudamono = fruits_dict["orange"]
・ furutsu_dict = {"ringo":110, "orenji:kudamono","banana":fruits_dict["apple"]}
→furutsu_dict = {"ringo":110, "orenji":kudamono, "banana":fruits_dict["apple"]}
辞書型のキー値はシングルクォーテーションではなくダブルクォーテーションが正しいです。
シンタックスエラーというのは、プログラムの構文がおかしい時に出るエラーです。
このエラーが出た際には、構文の書き方がおかしくないかを確認してみましょう。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Mac OS iMacでコマンドラインと辞書を連携させる方法 2 2023/07/15 17:59
- JavaScript sessionStorageを調べています。 1 2023/06/20 12:41
- その他(プログラミング・Web制作) python コードについて(初学者です) 3 2023/07/20 14:44
- 会社・職場 別のところでも同じ質問をしていますが回答がまだ得られずにこちらでも同じ内容で質問します。 お時間のあ 6 2023/07/18 08:28
- その他(プログラミング・Web制作) Spyder上のPythonでinputが実行されません。 2 2022/08/15 11:57
- その他(プログラミング・Web制作) プログラミング Pythonを使って、シグモイド関数、1/(1+e^-x)のx=0.5を代入したとき 2 2023/02/01 21:45
- その他(プログラミング・Web制作) Pythonのライブラリ、randomについて 3 2022/09/20 14:30
- 日本語 ネット辞書の数え方 1 2022/10/01 18:23
- その他(職業・資格) 何かの勉強してきた方質問です 7 2023/04/27 13:09
- その他(プログラミング・Web制作) プログラミング Python 1 2022/09/28 05:02
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
UserForm1.Showでエラーになり...
-
String""から型'Double'への変...
-
お助けください!VBAのファイル...
-
VBAでfunctionを利用しようとし...
-
【VBA】ワークブックを開く時に...
-
エクセルVBA 「On Error GoTo...
-
インポート時のエラー「データ...
-
VBでSQL文のUPDATE構文を使った...
-
マクロの「SaveAs」でエラーが...
-
「実行時エラー '3167' レコー...
-
実行時エラー'-2147467259(8000...
-
UBoundに配列がありませんとエ...
-
Excel vbaについての質問
-
On ErrorでエラーNoが0
-
VB.net 重複チェックがしたいです
-
【VB.NET】 パワポ操作を非表示で
-
実行時エラー '8021'とはどんな...
-
VBAのリストボックスで、横スク...
-
ASPでこんなエラーが出たんです...
-
VB6とVB.NETでNullの扱いが違う?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
UserForm1.Showでエラーになり...
-
String""から型'Double'への変...
-
On ErrorでエラーNoが0
-
VBAでfunctionを利用しようとし...
-
マクロで"#N/A"のエラー行を削...
-
VBA データ(特定値)のある最...
-
実行時エラー 438 の解決策をお...
-
お助けください!VBAのファイル...
-
文字列内で括弧を使うには
-
エクセルVBA 「On Error GoTo...
-
【VBA】ワークブックを開く時に...
-
マクロの「SaveAs」でエラーが...
-
ACCESSで値を代入できないとは?
-
実行時エラー'-2147467259(8000...
-
インポート時のエラー「データ...
-
【VB.NET】 パワポ操作を非表示で
-
Filter関数を用いた結果、何も...
-
UBoundに配列がありませんとエ...
-
Excel vbaについての質問
-
メールの件名のセットでエラー...
おすすめ情報