あなたの書籍のどのページを追跡するのに役立つ小さなプログラムを作成しています。私はブックマークのファンではないので、私は思った "私は、ユーザー入力を取るプログラムを作成し、それらが書かれたテキストの数や文字列を表示する場合はどうだろう、この場合は、必要に応じていつでも変更することができます」それは数行のコードしか必要としませんが、問題は次回プログラムを開いたときに同じ番号を表示するにはどうすればいいのですか?変数はリセットされますか?そうではありませんか?この方法で永続的に変数を変更する方法はありますか?変数を永久に変更する
答えて
ファイルに値を格納し、起動時に値をロードすることができます。
コードは次のようになり、データを読み取るために、この
variable1 = "fi" #start the variable, they can come from the main program instead
variable2 = 2
datatowrite = str(variable1) + "\n" + str(variable2) #converts all the variables to string and packs them together broken apart by a new line
f = file("/file.txt",'w')
f.write(datatowrite) #Writes the packed variable to the file
f.close() #Closes the file !IMPORTANT TO DO!
コードのように、多少なります
import string
f = file("/file.txt",'r') #Opens the file
data = f.read() #reads the file into data
if not len(data) > 4: #Checks if anything is in the file, if not creates the variables (doesn't have to be four)
variable1 = "fi"
variable2 = 2
else:
data = string.split(data,"\n") #Splits up the data in the file with the new line and removes the new line
variable1 = data[0] #the first part of the split
variable2 = int(data[1]) #Converts second part of strip to the type needed
ベア心の中で変数ファイルは、アプリケーションに平文で保存されているこの方法で。すべてのユーザが変数を編集して、プログラムの動作を変更することができ
これは私の問題を解決するために実際に使用したものではありませんが、これは非常に便利なので、他の人にはわかりますこれを答えとして受け入れる。 – MalyG
ディスクに保存する必要があります。本当に欲しいのでなければ、CSV、JSON、またはYAMLのようなものを使って、構造化されたデータを簡単にすることができます。
python pickleモジュールもチェックしてください。
変数は、いくつかの寿命を持っている:
- 彼らは、コードのブロックの中にいる場合は、その値はコードだけのそのブロックのために存在します。これは、関数、ループ、および条件をカバーします。
- オブジェクトの内部にある場合、その値はそのオブジェクトの存続期間中のみ存在します。
- オブジェクトが逆参照されるか、ブロックのコードを早めに残すと、変数の値は失われます。
特に何かの価値を維持したい場合は、を持続する必要があります。です。 Persistenceを使用すると、変数をディスクに書き込むことができます(データベースは技術的にはディスクに保存されます)。後で、変数の有効期限が切れた後、またはプログラムを再起動した後に取得できます。
ページの場所を維持する方法にはいくつかのオプションがあります。手間のかかる方法はSQLiteです。オブジェクトをunpickleにするか、単純にテキストファイルに書き込むことになります。
- 1. 永久にユーザーフォームを変更する
- 2. ボタンイメージを永久に変更します
- 3. sudoの$ PATH変数(Ubuntu 9.x)を永久に変更するには
- 4. $ PATH変数を永久に更新します
- 5. Android-メソッドは変数の値を永久に変更しています
- 6. Google Chromeでnavigator.useragentを永久に変更するには?
- 7. ドロップダウンリストを永久に変更する方法
- 8. Androidアプリのテーマを永久に変更する
- 9. GDBの逆アセンブリフレーバを永久に変更する
- 10. Laravel、アレイキーを永久に変更する方法は?
- 11. 新しいAzureポータルに永久に変更する方法
- 12. 変数を関数に永久に渡す
- 13. SASの変数値を永久に再フォーマットする
- 14. 設定変数を永久に設定する
- 15. 永久に変更RscriptおよびR Sys.getenv( "HOME")更新
- 16. android- hide(永久に)アクティビティを変更中に
- 17. Pandas DataFrame Plot:デフォルトのカラーマップを永久に変更
- 18. Laravelは変数を永久にサポートしていますか?
- 19. 変更変数番号恒久VBA
- 20. フォーム変数を永久に書き込む
- 21. 何かをしたときにImageButtonのイメージを永久に変更する
- 22. 変更するまでファイルを永久にキャッシュするためのHTTPヘッダー
- 23. WMIとpowershellを使用してポートを永久に変更する
- 24. jQueryの.keydown()を使って要素を永久に変更する方法は?
- 25. Windowsの水銀コマンドラインの言語を永久に変更する方法は?
- 26. Pythonコードを入力によって永久に変更できますか?
- 27. 永久
- 28. 永久
- 29. 恒久PowerShell変数
- 30. 交換のための変更は永久に残りますか?
ピクルファイルまたはデータベースに保存してください... –
@JoranBeasleyありがとうございます。しかし、どちらかをどうするかわかりません。もしあなたが私を啓発することができれば、それは素晴らしいだろう! – MalyG
または、単に値をテキストファイルに書き込んで、プログラムが読み込まれるときにその値をテキストファイルから読み込みます。次のURLをご覧ください:http://docs.python.org/2/tutorial/inputoutput.html – adchilds