質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

289閲覧

指定した値とリストの要素の重複確認

calendar

総合スコア4

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2022/11/27 20:22

実現したいこと

[数字、文字列]という要素を持つリストに対して、指定した文字列を持っていないか確認したいです。(できればそのままリストに追加したい)

非常にシンプルな内容なので
要素 in リスト
のような機能があるのかもしれませんが、見つからなかったのであれば教えていただきたいです。
数字の重複は考えなくて大丈夫です。

以下のようなもので対応できるとは思うのですが、スマートではないので...

ソースコード

python

1list=[[12,"abc"],[13,"str"],[199,"test"],[111,"n"]] 2 3num=123 4str="aaa" 5 6 7dup=False 8for i in list: 9 if(str==i[1]): 10 dup=True 11if not(dup): 12 list.append([num,str]) 13 14

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

liststr という名前は built-in モジュールにあるクラス名なので、それぞれ lststring に変更しています

python

1lst=[[12,"abc"],[13,"str"],[199,"test"],[111,"n"]] 2 3num=123 4string="aaa" 5 6if string not in [i[1] for i in lst]: 7 lst.append([num, string]) 8 9print(lst) 10 11# [[12, 'abc'], [13, 'str'], [199, 'test'], [111, 'n'], [123, 'aaa']]

投稿2022/11/27 20:34

編集2022/11/28 07:38
melian

総合スコア19749

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

calendar

2022/11/28 06:39

listについては失念していました、ありがとうございます。 やはり要素ではなく、リストのまま比較するしかないのですかね。 melinan様のコードでももちろん私の期待した動作をするのですが、 できれば一つの要素(str1)のみの条件で操作したいのですが...
melian

2022/11/28 07:39

ごめんなさい、「str のみの条件で」という部分を見落としていました。回答を修正しましたのでご確認ください。
calendar

2022/11/28 08:14

ありがとうございます! 早く対応していただけて助かりました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問