862 B
862 B
id | tags | created |
---|---|---|
atzw | Friday, April 26, 2024 |
Single_file_Python_scripts
Basic architecture
#! /usr/local/bin/python3
import sys
if __name__ == "__main__":
all_args = sys.argv
specific_arg = sys.argv[0]
# Main functionality...
When you run a script (module) Python assigns the string __main__
to the
__name__
attribute to the script that is being executed.
If you run the script as an import into another script, the __name__
attribute
of the imported module is set to the module name, not __main__
.
Everything can go under the __main__
conditional, or, for better readability,
you can define a main
function that is then invoked, e.g:
def main():
# Do some stuff
if __name__ == "__main__":
main()