お世話になります。
ご教授いただけないでしょうか。
■環境
Windows10・Python2.7
■やりたいこと
リスト1を生成させ、リスト内のデータ個数が10個超えるとリスト2を生成し、更にデータを格納。
また、10個超えるとリスト3を生成し更にデータを格納・・・以下繰り返し
のようにデータ格納個数が一定数を超えると新しいリストを生成を次々に行わせていきたいと考えております。
初心者のため質問の内容がわかりにくいと思いますが、どのようにすればやりたいことができるのかをご教示いただけると幸いです。
※以下のコードのように作ってみたところ、インデントエラーが発生し実行できませんでした。
■理由
現在使っているシステムにて、リストに入れられる個数に制限があるため
制限個数を超える前に別のリストを新たに生成する必要があるため
■コードのイメージ
python2
1# -*- coding: utf-8 -*- 2# coding=utf8 3 4 5list = ['a', 'b', 'c', 'd','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'] 6 7#リスト生成用 8No = 1 9 10for i in list: 11 if type(ph + str(No)) != 'list': 12 ph + str(No) = [] #←こんな感じでリストを作れないでしょうか? 13 14 (ph + str(No)).append('aaa') 15 if len(ph + str(No)) > 10: 16 No = No + 1
※一部コードに記載ミスがありましたので修正いたしました
<追記>
エラーメッセージ
File "test_list.py", line 12
ph + str(No) = [] #竊舌%繧薙↑諢溘§縺ァ繝ェ繧ケ繝医r菴懊l縺ェ縺・〒縺励g縺・°
・・
SyntaxError: can't assign to operator
インデントエラーではないはずです。エラーメッセージを質問に追記してください。
また、実行したい手順を書くより「想定される入力」に対する「期待される出力結果」を記載してください。
もしかして、 ph + str(No) というのは ph1 という変数を宣言したいという意味ですか?
ご確認およびご指摘いただきありがとうございます。
エラーメッセージ追記いたしました。
変数について、おっしゃるとおりph1のように空のリストを次々と生成できないかと考えております
質問にあるコードをコピペして確認しましたが、インデントは正常ですがSyntaxErrorになります。
手元にあるコードは質問に記載したコードと本当に同じですか?
再度、ご指摘頂きありがとうございます。
コードのコピペの際に誤ったコードを貼り付けてしまっておりました。
大変失礼いたしました。
再度コード更新いたしましたのでご確認いただいてもよろしいでしょうか。
お手間を取らせてしまい、申し訳ございません。
同じくSyntaxErrorです。確認ですが全角空白とか使ってませんか?
再度ご確認頂きありがとうございます。
おっしゃるとおりでした。Tabを使ってインデントをいれているつもりでしたが
エラーが出る箇所に半角空白で入れてしまった部分がありました。
大変失礼いたしました。
結果、エラーは以下のように履きだされ、Syntaxエラーが発生いたしました
File "test_list.py", line 12
ph + str(No) = [] #竊舌%繧薙↑諢溘§縺ァ繝ェ繧ケ繝医r菴懊l縺ェ縺・〒縺励g縺・°
・・
SyntaxError: can't assign to operator
回答2件
あなたの回答
tips
プレビュー