[解決済み】Python 2: AttributeError: 'list' オブジェクトに 'strip' 属性がない。
2022-01-30 17:13:31
質問
リストに関する小さな問題があります。というリストがあります。
l
:
l = ['Facebook;Google+;MySpace', 'Apple;Android']
そして、ご覧の通り、私のリストには2つの文字列しかありません。私はリストを分離したい
l
によって
';'
という新しいリストに新しい5つの文字列を入れました。
l1
.
どうすればいいのでしょうか?
あと、こうやってやってみました。
l1 = l.strip().split(';')
しかし、Pythonは私にエラーを与える。
AttributeError: 'list' object has no attribute 'strip'
では、もし 'list' オブジェクトに 'strip' や 'split' 属性がない場合、どのようにリストを分割すればいいのでしょうか?
ありがとうございます。
解決方法は?
strip()
は文字列のためのメソッドで、これを
list
そのため、エラーが発生します。
>>> 'strip' in dir(str)
True
>>> 'strip' in dir(list)
False
やりたいことをやるには、次のようにすればいい。
>>> l = ['Facebook;Google+;MySpace', 'Apple;Android']
>>> l1 = [elem.strip().split(';') for elem in l]
>>> print l1
[['Facebook', 'Google+', 'MySpace'], ['Apple', 'Android']]
要素を1つのリストにしたい(リストのリストではない)ので、2つのオプションがあります。
- 空のリストを作成し、そこに要素を追加する。
- リストを平坦にする。
を行うには、コードに従ってください。
>>> l1 = []
>>> for elem in l:
l1.extend(elem.strip().split(';'))
>>> l1
['Facebook', 'Google+', 'MySpace', 'Apple', 'Android']
2番目の方法は
itertools.chain
>>> l1 = [elem.strip().split(';') for elem in l]
>>> print l1
[['Facebook', 'Google+', 'MySpace'], ['Apple', 'Android']]
>>> from itertools import chain
>>> list(chain(*l1))
['Facebook', 'Google+', 'MySpace', 'Apple', 'Android']
関連
-
[解決済み】TypeError: unhashable type: 'numpy.ndarray'.
-
[解決済み】Python regex AttributeError: 'NoneType' オブジェクトに 'group' 属性がない。
-
[解決済み] 最小限の驚き」と「変更可能なデフォルトの引数
-
[解決済み] Pythonでオブジェクトが属性を持つかどうかを知る方法
-
[解決済み] Javaで文字列を分割する方法
-
[解決済み] インスタンスのクラス名を取得する?
-
[解決済み] 最近のPythonでカスタム例外を宣言する適切な方法?
-
[解決済み] List<T>をオブジェクトのプロパティでソートする方法
-
[解決済み] 億の相対的輸入
-
[解決済み] Pythonのクラスのメソッドのリストを取得するにはどうすればよいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
opencvとpillowを用いた顔認証システム(デモあり)
-
Python Decorator 練習問題
-
python implement mysql add delete check change サンプルコード
-
Pythonコードの可読性を向上させるツール「pycodestyle」の使い方を詳しく解説します
-
[解決済み] [Solved] sklearn error ValueError: 入力に NaN、infinity または dtype('float64') に対して大きすぎる値が含まれている。
-
[解決済み】RuntimeWarning: 割り算で無効な値が発生しました。
-
[解決済み】TypeErrorの修正方法。Unicodeオブジェクトは、ハッシュ化する前にエンコードする必要がある?
-
[解決済み】Django: ImproperlyConfigured: SECRET_KEY 設定は空であってはならない
-
[解決済み] builtins.TypeError: strでなければならない、bytesではない
-
[解決済み】LogisticRegression: Pythonでsklearnを使用して、未知のラベルタイプ: '連続'を使用しています。