Editing Configuration Files For Python

Jump to navigation Jump to search

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.

Latest revision Your text
Line 1: Line 1:
This is an article started by Russ Hensel, see "http://www.opencircuits.com/index.php?title=Russ_hensel#About My Articles" About My Articles for a bit of info.
+
This is an article started by Russ Hensel, see "http://www.opencircuits.com/index.php?title=Russ_hensel#About My Articles" About My Articles for a bit of info. The page is only partly finished.
 
 
This page discusses both the general virtues of using a parameter file written in Python, and the particular implementation, including some details I use in my applications.
 
 
 
  
 
= Why Configuration Files =
 
= Why Configuration Files =
Line 64: Line 61:
  
 
If you are asking why Parameters is not all defined at a Class level instead of instance level it is because I did not think of it then, I am now but have not changed the code so far ( requires more thought ).
 
If you are asking why Parameters is not all defined at a Class level instead of instance level it is because I did not think of it then, I am now but have not changed the code so far ( requires more thought ).
 
== How: New Users Guide ==
 
 
This section of this page is for a new user to the parameters as used in my applications.  Later you can read the documentation below for more advanced users.  For new users there are two parts of parameters.py that you should probably read.  The method parameters.new_user_mode() is normally where you should put your personal settings.  This alone is not sufficient, because you need to know what settings to include and how to choose values.  For this refer to the method parameters.default_mode, where a default is set for all values ( I hope ) and comments document the settings.  Also refer to the written documentation for each application.
 
 
Remember that the parameter.py file has to be legal Python.
 
 
  
 
== How: More Advanced ==
 
== How: More Advanced ==
Line 192: Line 182:
 
=== My Overall Structure ===
 
=== My Overall Structure ===
  
Check the __init__ method to see
+
* Meet the syntactic requirements for class creation.
 
 
* Meet the syntactic requirements for class instance creation.
 
 
* Assign instance to AppGlobal
 
* Assign instance to AppGlobal
* Call a subroutine that defaults all value as best it can for typical situations.
+
* Call a subroutine that defaults all value as best it can ( including getting OS and computer name )
* Call a subroutine that tweaks values according to the environment the program is running on.
+
* Call a subroutine that tweaks values according to OS
* Call a subroutine at give a value to mode and sets the mode of operation that has the name self.mode.  Typically called from choose_mode()
+
* Call a subroutine that tweaks values according to computer name
 +
* Call a subroutine at give a value to mode and sets the mode of operation that has the name self.mode
 
* Done  
 
* Done  
  
Code discipline is such that other code never modifies these values again ( except for some cute little monkey patching that I currently do not use and do not want to explain ).
+
Code discipline is such that other code never touches these values again ( except for some cute little monkey patching that I currently do not use and do not want to explain ).
 +
 
  
 
== Why Advantages/Features ==
 
== Why Advantages/Features ==
Line 226: Line 216:
  
 
= Editing and Editors =
 
= Editing and Editors =
 
This documentation is old, you can now give a list of editors for the system to try.  More revisions coming.
 
 
 
You need a text editor suitable for .py files to manage the parameter file ( parameters.py )
 
You need a text editor suitable for .py files to manage the parameter file ( parameters.py )
 
This includes most text editors.  I particularity like:
 
This includes most text editors.  I particularity like:
Line 247: Line 234:
 
= Other Links =  
 
= Other Links =  
 
*'''Check out link to left "What links here" This will, in part, link to projects using this type of configuration'''
 
*'''Check out link to left "What links here" This will, in part, link to projects using this type of configuration'''
 
*'''[https://learning-python.com/cgi/showcode.py?name=pyedit-products/unzipped/textConfig.py File: pyedit-products/unzipped/textConfig.py ]''' Here is another application that uses a .py to configure.
 
  
 
*'''[https://param.pyviz.org/ Param — Param 1.9.0 documentation ]'''
 
*'''[https://param.pyviz.org/ Param — Param 1.9.0 documentation ]'''
Line 270: Line 255:
 
------------->
 
------------->
 
[[Category:Arduino/RaspberryPi]][[Category:Python]][[Category:SmartTerminal]][[Category:Python SmartPlug]] [[Category:Python Easy DB]] [[Category:Python Projects]]
 
[[Category:Arduino/RaspberryPi]][[Category:Python]][[Category:SmartTerminal]][[Category:Python SmartPlug]] [[Category:Python Easy DB]] [[Category:Python Projects]]
[[Category:ClipBoard]] [[Category:Twitter Analysis DB]]
 

Please note that all contributions to OpenCircuits may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see OpenCircuits:Copyrights for details). Do not submit copyrighted work without permission!

Cancel Editing help (opens in new window)