リスト内の特定の単語を検索するにはどうすればよいですか?その特定の単語を検索したら、そこから後方にどのように検索できますか?私の例では、都市を検索してから、逆方向に検索して通りのタイプを見つける必要があります(例:Rd、St、Aveなど)リスト内の単語を検索し、その単語から後方に検索するにはどうすればよいですか?
まず、ユーザーが123 FakevilleセントSWサンフランシスコCA 90215:アドレスが入力されると
searchWord = 'San Francisco'
searchWord = searchWord.upper()
address = raw_input("Type an address: ").upper()
、私はその結果address = address.split()
を使用して、それを分割:
['123', 'Fakeville', 'St', 'SW', 'San Francisco', 'CA', '90215']
私はその後番目に都市を検索Eリスト:
for items in address:
if searchWord in items:
print searchWord
しかし、私は通りのタイプ(例:セント)を見つけるために、逆方向にカウントするかどうかはわかりません。
許容される通りの種類を判断するために標準化を行っていますか?ユーザーがそれを省略した場合(一部の都市では一般的です)あなたの例では、「SW」が「St」に続く状況はどうですか? 'i = address.index(searchWord)'を使って任意のリスト要素のインデックスを取得し、スライス/配列表記法を使って後方( 'address [i-1]')で作業することができます。 – Dan
また、リストをまったく使用せず、rfindに頼ってください。 – lynxlynxlynx
あなたのサンプル文字列を分割すると、 'Francisco'から' San'を分解して、期待される出力が元のものにならないようにします。 – Jan