が、私はこの文字列を持っているが:Pythonの - はIndexError:範囲外のリストインデックス - Forループ/ループ
string="R$ 35.0123. "
私はそれをきれいにしたい、その最後のドットと、最後にそのスペースアウトを取ります。それは次のようになり作る:私はこのエラーを取得していますが
while string[-1].isdigit()==False:
string=string[:-1]
:
IndexError: list index out of range
奇妙なことは、私は「ということです
string:"R$ 35.0123"
私はこれを使用しようとしていますこれはforループ内で実行しています。ループされたリストには1つの項目しかない場合はうまくいきます。リストに2つの項目がある場合、この問題が発生します。
アイデア? あなたのためにメリークリスマス。
BELOW FULL CODE (文字列である変数 "勇気")
if CNPJ in page:
CNPJloc=[]
for i in (re.finditer(CNPJ,page)):
CNPJloc.append(i.start())
for i in CNPJloc:
CNPJposition=i
beg_string=["aviao"]
end_string="sicon"
for i in beg_string:
if i in lower_page[CNPJposition-200:]:
beg_string=i
extrato_de_contrato=page[lower_page.rfind(beg_string,0,CNPJposition):lower_page.find(end_string,CNPJposition)]
lower_extrato=extrato_de_contrato.lower()
def valor():
valor=["valor do contrato:","valor:"]
for i in valor:
if i in lower_extrato:
valor=extrato_de_contrato[lower_extrato.rfind(i)+len(i):lower_extrato.find("fonte",lower_extrato.rfind(i))]
while valor[-1].isdigit()==False:
valor=valor[:-1]
print("Valor Total: ", valor)
return valor
valor()
、感謝します。問題は時には "。"、他の時は ""だけかもしれないということです。他の時は ".xzxzx"とすることができます。 – abutremutante
'sep = '。''と 'maxsplit = 1 'を使って[**' str.rsplit' **](https://docs.python.org/2/library/stdtypes.html#str.rsplit) ' –