How to run a module before install?
jfong at ms4.hinet.net
jfong at ms4.hinet.net
Sun Jan 13 23:15:17 EST 2019
I had download a module which has the following directory structure:
[XL-Sudoku-Solver_master]
|__[tests]
|__[xl_sudoku_solver]
|__setup.py |__ __init__.py
|__problem1.txt |__ __main__.py
|__README.md |__ ...
|__ ...
The setup.py file has something like this:
---------------------
...
setup(
name="xl-sudoku-solver",
version="0.0.1.post3",
packages=['xl_sudoku_solver'],
entry_points={
"console_scripts": [
"xl-sudoku-solver = xl_sudoku_solver.__main__:main"
]
},
...
----------------
and the __main__.py has:
----------------
...
from . import Solver, load_from_file, load_from_input, load_from_string
def main():
...
if __name__ == '__main__':
main()
----------------
The README.md suggest the way of running it:
pip install xl-sudoku-solver
$ xl-sudoku-solver --time -f problem1.txt
But I like to run it before install. Is it possible? and how? I had try two ways below but niether works:
1) h:\Temp\XL-Sudoku-Solver-master>py xl_sudoku_solver --time -f problem1.txt
Traceback (most recent call last):
File "C:\Python34\lib\runpy.py", line 170, in _run_module_as_main
"__main__", mod_spec)
File "C:\Python34\lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "xl_sudoku_solver\__main__.py", line 5, in <module>
from . import Solver, load_from_file, load_from_input, load_from_string
SystemError: Parent module '' not loaded, cannot perform relative import
2) h:\Temp\XL-Sudoku-Solver-master>py
Python 3.4.4 (v3.4.4:737efcadf5a6, Dec 20 2015, 19:28:18) [MSC v.1600 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import xl_sudoku_solver
>>>
Can't find the name "main", What to do?
--Jach
More information about the Python-list
mailing list