私は現在、文字列「式」で大文字を見つける次のコードを持っています: http://pastebin.com/syRQnqCP
さて、私の質問は、そのコードを変更して (「if choice = 1:」ループ内のビットを無視して)、新しく分割された文字列の各部分が独自の変数に入れられるようにするにはどうすればよいかということです。
たとえば、NaBr を入力すると、文字列は "Na" と "Br" に分割されます。CSV ファイルで検索できるように、これらを個別の変数に入れる必要があります。生成されたものであることが望ましいので、MgSO4 のように 3 つの要素がある場合、O は Mg と S のように別の変数に入れられます。
これが不明な場合は、私に知らせてください。もう少しわかりやすくするようにします...しかし、そうする方法は今のところ頭に浮かびません。:(
編集: 関連するコード:
関数:
def split_uppercase(string):
x=''
for i in string:
if i.isupper(): x+=' %s' %i
else: x+=i
return x.strip()
文字列の入力と検索:
formula = raw_input("Enter formula: ")
upper = split_uppercase(formula)
#Pull in data from form.csv
weight1 = float(formul_data.get(element1.lower()))
weight2 = float(formul_data.get(element2.lower()))
weight3 = float(formul_data.get(element3.lower()))
weightSum = weight1 + weight2 + weight3
print "Total weight =", weightSum