すべてのプラットフォーム(少なくともWin/Mac/Linux)でアプリケーションデータ(設定ファイルなど)の適切なディレクトリを取得するコードスニペットが必要です。たとえば、Windowsでは%APPDATA%/となります。Python:クロスプラットフォームの方法でAppDataフォルダを取得する
8
A
答えて
0
このプログラムを使用するオペレーティングシステムの「appdata」の場所を調べることをおすすめします。場所を知ったら、ifとdo_something()を検出するif文を単純に使用できます。
import sys
if sys.platform == "platform_value":
do_something()
elif sys.platform == "platform_value":
do_something()
- システム:platform_value
- のLinux(2.xおよび3.x): 'linux2'
- Windowsの場合: 'win32の'
- のWindows/Cygwinの: 'cygwinの'
- マックOS X:「ダーウィンの
- OS/2: 'OS2'
- OS/2 EMX: 'os2emx'
- RISCOS: 'RISCOS'
- AtheOS: 'atheos'
一覧はthe official Python docsからです。 ( 'sys.platform'を検索)
7
appdirs moduleを使用しても問題が解決しない場合は、問題を解決するはずです。 (コスト=モジュールをインストールするか、Pythonアプリケーションに直接組み込む必要があります)
関連する問題
- 1. nsIFile:Vista AppData/LocalLowフォルダのパスを取得する方法は?
- 2. Pythonで一時ディレクトリを取得するクロスプラットフォームの方法
- 3. appdataフォルダ
- 4. PowerShellで%AppData%のパスを取得する
- 5. C#でappdataフォルダを作成する方法
- 6. AppData \ Roamingフォルダからアプリケーションファイルを削除する方法
- 7. Pythonでのファイルのフォルダ名を取得
- 8. ユーザーのAppDataフォルダ内のReflectedSchemasフォルダ(Visual Studio)
- 9. フォルダ内のすべてのファイルを取得し、PythonでMD5ハッシュを取得する方法は?
- 10. C++他のユーザーのappdataパスを取得
- 11. zipfile - python:圧縮されたフォルダ内のファイルのメタデータを取得する方法
- 12. C#で特定のユーザーのAppDataディレクトリを取得するには?
- 13. .gitフォルダはクロスプラットフォームですか?
- 14. Visual Basic:%appdata%から新しいフォルダにフォルダをコピーする
- 15. フォルダの内容をリストする方法 - フォルダにファイル名を取得する
- 16. Python、GIFフレームを取得する方法
- 17. eclipseでbinフォルダを取得する方法
- 18. Qt(クロスプラットフォーム)を使用して、リストのビデオキャプチャデバイスを取得する方法(Webカメラ) (C++)
- 19. Pythonでスクリーンショットを撮る - クロスプラットフォーム
- 20. フォルダの.extのDirを取得する方法
- 21. Sdcardのフォルダのサブフォルダからイメージを取得する方法は?
- 22. Pythonで%APPDATA%ディレクトリへのパスを取得するにはどうすればよいですか?
- 23. GITのリモートブランチからフォルダを取得する方法
- 24. PhoneGap iOS、アプリ "Documents"フォルダのフルパスを取得する方法は?
- 25. C++のフォルダからファイル名を取得する方法
- 26. ASP.NET Core 1.0のbinフォルダを取得する方法
- 27. 公開共有ファイル/フォルダのリンクを取得する方法
- 28. Windowsバッチの親フォルダを取得する方法
- 29. PythonでExcelファイルを読み込むクロスプラットフォームの方法は?
- 30. Windowsサービスから%appdata%を取得する[C++]
Windowsでのみ動作することは間違いありません。私はクロスプラットフォームを望んでいます:) – user1438098
Pythonは事を一般的なライブラリに抽象化することについてすべてです。なぜこれを行う共通の機能はありませんか? –
else if? Pythonにはelifがあります!そして無効な引用符。私は答えを編集します... – les