Python-Teaching: Difference between revisions

From Research Computing Center Wiki
Jump to navigation Jump to search
No edit summary
 
(16 intermediate revisions by 3 users not shown)
Line 9: Line 9:


=== Version ===
=== Version ===
2.7.14
2.7.18, 3.9.6, 3.10.4, 3.10.8, 3.11.3, 3.11.5, 3.12.3, 3.13.1, 3.13.5
 
=== Author / Distributor ===
=== Author / Distributor ===
   
   
Line 21: Line 21:
=== Running Program ===
=== Running Program ===


The last version of this application is at /usr/local/apps/eb/Python/2.7.14-foss-2016b
Please also see [[Python-Sapelo2]] as that documentation applies to the teaching cluster as well.
 
To see all versions of Python installed on the cluster, use:
<pre class="gscript">
ml spider Python
</pre>
 
For example:
 
'''Version 2.7.18'''
 
Installed in /apps/eb/Python/2.7.18-GCCcore-11.3.0
 
To use this version, please load the module with
<pre class="gscript">
ml Python/2.7.18-GCCcore-11.3.0
</pre>
 
'''Version 3.12.3'''
 
Installed in /apps/eb/Python/3.12.3-GCCcore-13.3.0


To use this version, please loads the module with
To use this version, please load the module with
<pre class="gscript">
<pre class="gscript">
ml Python/2.7.14-foss-2016b
ml Python/3.12.3-GCCcore-13.3.0
</pre>  
</pre>  


Here is an example of a shell script, sub.sh, to run on at the batch queue:  
 
Here is an example of a shell script, sub.sh, to run on the batch queue:  


<div class="gscript2">
<div class="gscript2">
Line 40: Line 61:
<nowiki>#</nowiki>SBATCH --time=<u>08:00:00</u><br>   
<nowiki>#</nowiki>SBATCH --time=<u>08:00:00</u><br>   
<nowiki>#</nowiki>SBATCH --output=Python.%j.out<br>
<nowiki>#</nowiki>SBATCH --output=Python.%j.out<br>
<nowiki>#</nowiki>SBATCH --error=Python.%j.err<br>
   
   
cd $SLURM_SUBMIT_DIR<br>
cd $SLURM_SUBMIT_DIR<br>
ml Python/2.7.14-foss-2016b<br>     
ml Python/3.12.3-GCCcore-13.3.0<br>     
<u>[options]</u><br>   
python <u>[options]</u><br>   
</div>
</div>
In the real submission script, at least all the above underlined values need to be reviewed or to be replaced by the proper values.   
In the real submission script, at least all the above underlined values need to be reviewed or to be replaced by the proper values.   
Line 58: Line 80:
   
   
<pre  class="gcommand">
<pre  class="gcommand">
ml Python/2.7.14-foss-2016b
ml Python/3.12.3-GCCcore-13.3.0
    
python -h
 
usage: python [option] ... [-c cmd | -m mod | file | -] [arg] ...
Options (and corresponding environment variables):
-b    : issue warnings about converting bytes/bytearray to str and comparing
        bytes/bytearray with str or bytes with int. (-bb: issue errors)
-B    : don't write .pyc files on import; also PYTHONDONTWRITEBYTECODE=x
-c cmd : program passed in as string (terminates option list)
-d    : turn on parser debugging output (for experts only, only works on
        debug builds); also PYTHONDEBUG=x
-E    : ignore PYTHON* environment variables (such as PYTHONPATH)
-h    : print this help message and exit (also -? or --help)
-i    : inspect interactively after running script; forces a prompt even
        if stdin does not appear to be a terminal; also PYTHONINSPECT=x
-I    : isolate Python from the user's environment (implies -E and -s)
-m mod : run library module as a script (terminates option list)
-O    : remove assert and __debug__-dependent statements; add .opt-1 before
        .pyc extension; also PYTHONOPTIMIZE=x
-OO    : do -O changes and also discard docstrings; add .opt-2 before
        .pyc extension
-P    : don't prepend a potentially unsafe path to sys.path; also
        PYTHONSAFEPATH
-q    : don't print version and copyright messages on interactive startup
-s    : don't add user site directory to sys.path; also PYTHONNOUSERSITE=x
-S    : don't imply 'import site' on initialization
-u    : force the stdout and stderr streams to be unbuffered;
        this option has no effect on stdin; also PYTHONUNBUFFERED=x
-v    : verbose (trace import statements); also PYTHONVERBOSE=x
        can be supplied multiple times to increase verbosity
-V    : print the Python version number and exit (also --version)
        when given twice, print more information about the build
-W arg : warning control; arg is action:message:category:module:lineno
        also PYTHONWARNINGS=arg
-x    : skip first line of source, allowing use of non-Unix forms of #!cmd
-X opt : set implementation-specific option
--check-hash-based-pycs always|default|never:
        control how Python invalidates hash-based .pyc files
--help-env: print help about Python environment variables and exit
--help-xoptions: print help about implementation-specific -X options and exit
--help-all: print complete help information and exit
 
Arguments:
file   : program read from script file
-      : program read from stdin (default; interactive mode if a tty)
arg ...: arguments passed to program in sys.argv[1:]


</pre>
</pre>

Latest revision as of 15:16, 9 January 2026

Category

Programming

Program On

Teaching

Version

2.7.18, 3.9.6, 3.10.4, 3.10.8, 3.11.3, 3.11.5, 3.12.3, 3.13.1, 3.13.5

Author / Distributor

Python

Description

"Python is a programming language that lets you work more quickly and integrate your systems more effectively." More details are at Python

Running Program

Please also see Python-Sapelo2 as that documentation applies to the teaching cluster as well.

To see all versions of Python installed on the cluster, use:

ml spider Python

For example:

Version 2.7.18

Installed in /apps/eb/Python/2.7.18-GCCcore-11.3.0

To use this version, please load the module with

ml Python/2.7.18-GCCcore-11.3.0

Version 3.12.3

Installed in /apps/eb/Python/3.12.3-GCCcore-13.3.0

To use this version, please load the module with

ml Python/3.12.3-GCCcore-13.3.0


Here is an example of a shell script, sub.sh, to run on the batch queue:

#!/bin/bash
#SBATCH --job-name=j_Python
#SBATCH --partition=batch
#SBATCH --mail-type=ALL
#SBATCH --mail-user=username@uga.edu
#SBATCH --ntasks=1
#SBATCH --mem=10gb
#SBATCH --time=08:00:00
#SBATCH --output=Python.%j.out
#SBATCH --error=Python.%j.err

cd $SLURM_SUBMIT_DIR
ml Python/3.12.3-GCCcore-13.3.0
python [options]

In the real submission script, at least all the above underlined values need to be reviewed or to be replaced by the proper values.

Please refer to Running_Jobs_on_the_teaching_cluster, Run X window Jobs and Run interactive Jobs for more details of running jobs at Teaching cluster.


Here is an example of job submission command:

sbatch ./sub.sh 

Documentation

ml Python/3.12.3-GCCcore-13.3.0
python -h

usage: python [option] ... [-c cmd | -m mod | file | -] [arg] ...
Options (and corresponding environment variables):
-b     : issue warnings about converting bytes/bytearray to str and comparing
         bytes/bytearray with str or bytes with int. (-bb: issue errors)
-B     : don't write .pyc files on import; also PYTHONDONTWRITEBYTECODE=x
-c cmd : program passed in as string (terminates option list)
-d     : turn on parser debugging output (for experts only, only works on
         debug builds); also PYTHONDEBUG=x
-E     : ignore PYTHON* environment variables (such as PYTHONPATH)
-h     : print this help message and exit (also -? or --help)
-i     : inspect interactively after running script; forces a prompt even
         if stdin does not appear to be a terminal; also PYTHONINSPECT=x
-I     : isolate Python from the user's environment (implies -E and -s)
-m mod : run library module as a script (terminates option list)
-O     : remove assert and __debug__-dependent statements; add .opt-1 before
         .pyc extension; also PYTHONOPTIMIZE=x
-OO    : do -O changes and also discard docstrings; add .opt-2 before
         .pyc extension
-P     : don't prepend a potentially unsafe path to sys.path; also
         PYTHONSAFEPATH
-q     : don't print version and copyright messages on interactive startup
-s     : don't add user site directory to sys.path; also PYTHONNOUSERSITE=x
-S     : don't imply 'import site' on initialization
-u     : force the stdout and stderr streams to be unbuffered;
         this option has no effect on stdin; also PYTHONUNBUFFERED=x
-v     : verbose (trace import statements); also PYTHONVERBOSE=x
         can be supplied multiple times to increase verbosity
-V     : print the Python version number and exit (also --version)
         when given twice, print more information about the build
-W arg : warning control; arg is action:message:category:module:lineno
         also PYTHONWARNINGS=arg
-x     : skip first line of source, allowing use of non-Unix forms of #!cmd
-X opt : set implementation-specific option
--check-hash-based-pycs always|default|never:
         control how Python invalidates hash-based .pyc files
--help-env: print help about Python environment variables and exit
--help-xoptions: print help about implementation-specific -X options and exit
--help-all: print complete help information and exit

Arguments:
file   : program read from script file
-      : program read from stdin (default; interactive mode if a tty)
arg ...: arguments passed to program in sys.argv[1:]

Back to Top

Installation

Source code is obtained from Python

System

64-bit Linux