2017-01-13 9 views
0

私はPythonとCGIを使用しているWebサイトでメンテナンスを行っています。このサイトは現在Python上で動作していますが、いくつかの奇妙な理由から、 にPython変数を同じPythonファイルのJavaScript変数に割り当てる必要があります。私は多くのことを試みましたが、彼らは働いていませんでした、私はそれが可能であるかどうかわかりません。どんな助けでも大歓迎です。 Pythonから私が必要とするJavaScriptへの変数交換を示すためにコードを単純化しました。私のPythonバージョンは3.5.2で、サイトはIISサーバー上で動作しています。もう一度あなたの助けと時間をいただき、ありがとうございます。これを行うにはPython変数をJavaScript変数に割り当てる

import cgi 

print('') 
temp = 78 #These is the Python variable I need to assign to the Javascript variable. 

print('<html>') 
print('<script type="text/javascript">') 
print('var x = {{temp}};') #Here's how I'm trying to assign the python variable. 
print('document.write(x);') 
print('document.write("HELLO PYTHON VARIABLE!!");') 
print('</script>') 
print('</html>') 
+0

は、それだけの数です、または変数ホールドユーザー入力していますか? (セキュリティが関係しているので) – RemcoGerlich

答えて

1

多くの方法:

print ('var x = %d' % temp) 

print ('var x = ' + str(temp) + ';') 

print ('var x = {{temp}};'.replace("{{temp}}", str(temp))) 
+0

ありがとうGantTheWanderer !!私は交換したいだけの数字です、両方の方法が完璧に機能しました!私は多くの日がこれらをぶら下げていた、あなたはちょうど多くの時間を保存した、再びあなたの親切な応答のおかげで。最高のグアテマラから。 –

+0

De nadaは、プログラムを書くプログラムを最初に扱いにくいものにすることができますが、実際には第2の性質になります。その他の落とし穴には、問題を速やかに見つけ出すことができるquota(temp = "Occam's Razor" "print" var x = '"+ temp +"' ")を扱う必要があります。 – GantTheWanderer

+0

Muchas gracias otra vez Grant!うわー、あなたは正しく引用符を追跡するのは難しいです、私はあなたの文字列の例を動作させることができませんでしたが、私はバージョン3.5を使用してそれを数えることはなかったと思います。 "Occam's Razor"の二重引用符のために、このオカムのカミソリのようなmiのために働いていました。一文引用で、文字列の例に感謝します。ちょうどその問題を今直面しています。ありがとうございます!! –

2
print('var x = {{temp}};') #Here's how I'm trying to assign the python variable. 

あなたが実際にテンプレートエンジンにすることなく、テンプレートのことをやろうとしているように見えます。

は、代わりにこれを試してみてください:

print('var x =' + temp + ';') 
+0

テンプレートエンジンについての有効なポイント –

+0

ありがとうエバン・トンプソン!あなたは絶対に正しい私はそれを行う必要があります、その間に、これらの解決されたmiの即時の問題、それは完璧に働いた、ありがとう! –

関連する問題