Civ4 Python/import: Difference between revisions
No edit summary |
No edit summary |
||
Line 42: | Line 42: | ||
=='''Import rules:'''== | =='''Import rules:'''== | ||
Use imports at the file beginning! | Use imports at the file beginning! | ||
== References == | |||
[http://forums.civfanatics.com/showpost.php?p=2495872|Lesson 09 - 'Borrowing' other people's stuff (with modules)] |
Revision as of 12:39, 17 July 2010
import allow you to add python files to you mod.
Example:
How to add popup to the event:
- Bad way:
- Insert popup code to CvEventManager.py in event.
Result:
Big files is hard to read and edit. It is not easy to customize this code and merge to others mod.
- Good way:
- Create file mymod.py
- Create function that runs popup (for example: run_popup)
- edit CvEventManager.py:
- add string after imports: import mymod.py
- and string in event: mymod.run_popup(*args)
- add string after imports: import mymod.py
Result:
It is easy to add / remove this function from mod (just uncomment lines).
It is easy to share this function.
It is easy to call this function in other place. (if yon need it on some event).
import executes script in file (if you have only functions and classes loads them to memory.)
import sintax:
- import mymod
to access functions use:
mymod.foo()
- from mymod import *
to access functions use:
foo()
- from mymod import foo, goo
to access functions use:
foo() or goo()
(some IDE has autocomplite feature and in this way shows only foo and goo.)
- from mymod import this_is_long_name_function as foo
to access functions use:
foo()
(It is good idea to have functions with understandable name)
Import rules:
Use imports at the file beginning!