[解決済み] ValueError: Substring not found, What am I doing wrong?
2022-02-04 03:54:13
質問
def get_file():
lst_Filename = []
while True:
Filename = input('\nPlease enter name of ballot file: ')
try:
read_Filename = open(Filename, 'r')
txt_Filename = read_Filename.readlines()
lst_Filename = [word.strip() for word in txt_Filename]
read_Filename.close()
return lst_Filename
except IOError:
print("The file",Filename,"does not exist.")
continue
lst_Filename = get_file()
lst2 = {}
for item in lst_Filename:
if item.index('1') == 0:
print(item)
lst_Filenameは次のような構造になっています。['1490 2 Mo', '1267 3 Mo', '2239 6 Mo', '1449 7 Ks'], 実際のファイルには、数百の項目がリストアップされています。
1'で始まる項目を選択しようとしています。プログラムを実行すると、最初の2つの項目が出力されます。
1490 2 Mo
1267 3 Mo
問題は "if item.index('1') == 0:" という行にあるそうで、'2239 6 Mo' が '1' で始まらないからだと思われます。
私が理解していないのは、私のコードは、lst_Filenameの各項目について、その項目(文字列である)の0インデックスに部分文字列「1」がある場合、その項目を選択する、というものです。
if'は選択文ではないのですか、なぜプログラムは'1'で始まらない項目をスキップしないのですか。
解決方法は?
この場合の問題点は
.index()
投げる
ValueError
は、要求された項目が見つからなかったときに このため、最初の2つの項目についてはうまくいきますが、それ以外の何かで始まる文字列に到達すると
1
というエラーが表示され、検索が中断されます。やりたいことをうまくやるには
str.startswith()
.
デモの様子
>>> lst = ['1490 2 Mo', '1267 3 Mo', '2239 6 Mo', '1449 7 Ks']
>>> [item for item in lst if item.startswith('1')]
['1490 2 Mo', '1267 3 Mo', '1449 7 Ks']
関連
-
[解決済み】Pipenv: コマンドは見つかりませんでした
-
[解決済み] Dockerイメージの実行中にそのようなファイルやディレクトリがないエラーが発生する
-
[解決済み] Pythonで "filter "オブジェクトの長さを求める方法
-
[解決済み] PyCharmでpython 3.4を使用する際にInvalid Python SDK Errorが発生する。
-
[解決済み] OpenBLAS blas_thread_init: pthread_create: リソースが一時的に利用できない
-
[解決済み] sklearnのprecision_recall_fscore_supportの出力はどのように並べられるのでしょうか?
-
[解決済み] xml.parsers.expat.ExpatError: 整形式でない(無効なトークン)。
-
[解決済み] CrontabでpythonのsubPrrocess経由で使用するmailxを呼び出せない。
-
[解決済み] discordのボットコマンドとイベントの両方を使うには?
-
[解決済み] Python 3 のバイト列変数を通常の文字列に変換するにはどうすればよいですか?重複
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】ImportError: libcublas.so.9.0: 共有オブジェクトファイルを開くことができない
-
[解決済み】なぜELIF Invalid Syntax Errorが発生するのでしょうか?
-
[解決済み] ValueError: pysparkを使用してsparkで複数のSparkContextsを同時に実行できません。
-
[解決済み] 修正方法:cx_Oracle.DatabaseError: DPI-1047: 64 ビット Oracle クライアントライブラリが見つかりません - Python
-
[解決済み] xml.parsers.expat.ExpatError: 整形式でない(無効なトークン)。
-
[解決済み] ImportError: Missing optional dependency 'S3Fs'. S3Fsパッケージは、S3ファイルを処理するために必要です。S3Fsをインストールするには、pipまたはcondaを使用してください。
-
[解決済み] Radd法によるクラス間加算
-
[解決済み] python3 で cv2 をインポートするには?
-
[解決済み] condaからpip3用のrequirements.txtを作成する。
-
[解決済み] ~/.conda/envs. ~/anaconda3/envs.