System command wrappers
pykx.system
System command wrappers for PyKX.
SystemCommands
SystemCommands(q)
Wrappers for q
system commands.
More documentation on all the system commands available to q
can be
found here.
tables
tables(namespace=None)
Lists the tables associated with a namespace/dictionary
Examples:
Retrieve the tables within a provided namespace:
kx.system.tables('.foo')
Retrieve the tables within a provided dictionary:
kx.system.tables('foo')
console_size
writable
property
console_size()
The maximum console size for the q process in the format rows, columns.
The size of the output for the q process before truncating the rest with ...
.
Expects a 2 item list denoting the console width and console height.
Note: Does not work over IPC, only within EmbeddedQ.
Examples:
Get the maximum console_size size of output for EmbeddedQ to 10 columns and 10 rows.
kx.q.system.console_size
Set the maximum console size of output for EmbeddedQ to 10 columns and 10 rows.
kx.q.system.console_size = [10, 10]
display_size
writable
property
display_size()
The maximum console display size for the q process in the format rows, columns.
The size of the output for the q process before truncating the rest with ...
.
Expects a 2 item list denoting the display width and console height.
Note: Does not work over IPC, only within EmbeddedQ.
Examples:
Get the maximum display size of output for EmbeddedQ to 10 columns and 10 rows.
kx.q.system.display_size
Set the maximum display size of output for EmbeddedQ to 10 columns and 10 rows.
kx.q.system.display_size = [10, 10]
cd
cd(directory=None)
Get the current directory or change the current directory.
Examples:
Get the current working directory.
kx.q.system.cd()
Change the current working directory to the root directory on a UNIX
like machine.
kx.q.system.cd('/')
namespace
namespace(ns=None)
Get the current namespace or change to a new namespace.
Examples:
Get the current namespace.
kx.q.system.namespace()
Change the current namespace to .foo
, note the leading .
may be ommited.
kx.q.system.namespace('foo')
Return to the default namespace.
kx.q.system.namespace('')
functions
functions(ns=None)
Get the functions available in the current namespace or functions in a provided namespace or dictionary.
Examples:
Get the functions within the current namespace.
kx.q.system.functions()
Get the functions within the .foo
namespace.
kx.q.system.functions('.foo')
Get the functions within a dictionary.
kx.q.system.function('foo')
garbage_collection
writable
property
garbage_collection()
The current garbage collection mode that q
will use.
0 - default deferred collection. 1 - immediate collection.
Examples:
Get the current garbage collection mode.
kx.q.system.garbage_collection
Set the current garbage collection mode to immediate collection.
kx.q.system.garbage_collection = 1
load
load(path)
Loads a q script or a directory of a splayed table.
Examples:
Load a q script named foo.q
.
kx.q.system.load('foo.q')
utc_offset
writable
property
utc_offset()
Get the local time offset as an integer from UTC.
If abs(offset) > 23 then return the offset in minutes.
Examples:
Get the current local time offset.
kx.q.system.utc_offset
Set the current local time offset to be -4:00 from UTC.
kx.q.system.utc_offset = -4
precision
writable
property
precision()
Get the precision for floating point numbers (number of digits shown).
Note: Setting this property does not work over IPC, only works within EmbeddedQ
.
Examples:
Get the current level of float precision.
kx.q.system.precision
Set the Level of float precision to 2.
kx.q.system.precision = 2
rename
rename(src, dest)
Rename file src
to dest
.
Equivalent to the unix mv
command or Windows move
command.
Note: Cannot rename to a different disk.
Examples:
Rename a file foo.q
to bar.q
.
kx.q.system.rename('foo.q', 'bar.q')
max_num_threads
writable
property
max_num_threads()
The maximum number of secondary threads available to q.
This value can be set using the -s
command-line flag, provided to q via the $QARGS
environment variable. For example: QARGS='-s 8' python
, or QARGS='-s 0' python
.
num_threads
writable
property
num_threads()
The current number of secondary threads being used by q.
Computations in q will automatically be parallelized across this number of threads as q deems appropriate.
This property is meant to be modified on EmbeddedQ
and QConnection
instances.
Examples:
Set the number of threads for embedded q to use to 8.
kx.q.num_threads = 8
Set the number of threads for a q process being connected to over IPC to 8.
q = kx.SyncQConnection('localhost', 5001)
q.num_threads = 8
random_seed
writable
property
random_seed()
The last value the the random seed was initialized with.
Examples:
Get the current seed value.
kx.q.system.random_seed
Set the random seed value to 23.
kx.q.system.random_seed = 23
variables
variables(ns=None)
Get the variables in the current namespace or variables in a given namespace.
Examples:
Get the variables defined in the current namespace.
kx.q.system.variables()
Get the variables associated with a q namespace/dictionary
kx.q.system.variables('.foo')
kx.q.system.variables('foo')
workspace
property
workspace()
Outputs various information about the current memory usage of the q
process.
Examples:
Get the memory usage of EmbeddedQ
.
kx.q.system.workspace
week_offset
writable
property
week_offset()
The start of week offset where 0 is Saturday.
Examples:
Get the current week offset.
kx.q.system.week_offset
Set the current week offset so Monday is the first day of the week.
kx.q.system.week_offset = 2
date_parsing
writable
property
date_parsing()
Get the current format for date parsing.
0 - is for mm/dd/yyyy
1 - is for dd/mm/yyyy
Examples:
Get the current value for date parsing.
kx.q.system.date_parsing
Get the current value for date parsing so the format is dd/mm/yyyy
.
kx.q.system.date_parsing = 1