Skip to main content

PyPI package with some better syntax tools for python

Project description

PyPI version GitHub issues PRs Welcome

Downloads Downloads Downloads

true-false-python

PyPI package with some better syntax tools for python

pip install truefalsepython

Logical tools

For True and False values there are equal constants (like it is in C-like languages or R) TRUE, T, true and FALSE, F, false; for None there is NULL constant:

from truefalsepython import TRUE, FALSE, T, F, true, false, NULL

print(True == T) # True
print(True == TRUE) # True
print(True == true) # True


print(False == F) # True
print(False == FALSE) # True
print(False == false) # True

print(NULL) # None

Little functions

  • is_odd(number)
  • is_even(number)
  • is_number(object)
  • max_fast(a, b)
  • min_fast(a, b)

Useful functions

  • fast_sample(objects, probs) -- returns 1 random object from objects with probs probabilities. It's faster than np.random.choice(objects, 1, probs) (example)
  • randomTrue(prob = 0.5) -- returns True with probability prob, otherwise False

Useful for debug:

  • set_trace() -- like breakpoint
  • debug(function, *args, **kwargs) -- for debug function function with those arguments

R-like functions

For arrays there are several R-like functions:

  • ifelse — just wrapper of numpy.where
  • nrow — returns number of rows
  • ncol — returns number of columns
  • colMeans — returns average for each column
  • rowMeans — returns average for each row
  • colSums — returns sums for each column
  • rowSums — returns sums for each row
  • apply — applies function FUN to dimension of arr2D array (for rows if MARGIN == 1 and columns if MARGIN == 2)
  • lapply — applies function func for each element in array (array/list or something else)
  • sapply — like lapply but returns numpy array
  • sample — it is np.random.choice but replace = False by default
  • sample_int — sample numbers from 0 to n-1

Example of usage:

import numpy as np
from truefalsepython import nrow, ncol, colMeans, rowMeans, colSums, rowSums, apply, lapply, sapply, sample, sample_int


np.random.seed(1)

# some 2D array
random_matrix = np.random.randint(8, size = (5, 3))


# how to get rows and cols counts
print(nrow(random_matrix)) # 5

print(ncol(random_matrix)) # 3

# operations for each row/column
print(rowMeans(random_matrix))
# [4.         2.66666667 5.         0.33333333 5.33333333]

print(colMeans(random_matrix))
# [2.4 4.4 3.6]

print(rowSums(random_matrix))
# [12  8 15  1 16]

print(colSums(random_matrix))
# [12 22 18]

# apply function (MARGIN is 1 for rows and 2 for columns)
print(apply(random_matrix, MARGIN = 1, FUN = np.min))
# [3 0 3 0 4]

# as u can see, it's not necessary to use FUN returns only 1 number by vector
print(apply(random_matrix, MARGIN = 2, FUN = np.sqrt))
#[[2.23606798 0.         1.73205081 0.         2.        ]
# [1.73205081 2.64575131 2.23606798 0.         2.64575131]
# [2.         1.         2.64575131 1.         2.23606798]]

some_arr = np.array([1, 2, 3, 5, 4, 3, 2])

# returns list
print(lapply(some_arr, lambda x: -x))
# [-1, -2, -3, -5, -4, -3, -2]

# returns numpy array
print(sapply(some_arr, lambda x: -x))
# [-1 -2 -3 -5 -4 -3 -2]

# like np.random.choice but replace = False by default
print(sample(some_arr, 4))
# [5 3 2 1]

# sample numbers from 0 to n-1
print(sample_int(n = 100, size = 10))
# [69 46 58 12 73 98 31 53 65 96]

Functions without category

  • time_to_seconds(days = 0, hours = 0, minutes = 0, seconds = 5) -- converts time to seconds

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

truefalsepython-0.2.0.tar.gz (5.7 kB view details)

Uploaded Source

Built Distribution

truefalsepython-0.2.0-py3-none-any.whl (6.7 kB view details)

Uploaded Python 3

File details

Details for the file truefalsepython-0.2.0.tar.gz.

File metadata

  • Download URL: truefalsepython-0.2.0.tar.gz
  • Upload date:
  • Size: 5.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/58.1.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.3

File hashes

Hashes for truefalsepython-0.2.0.tar.gz
Algorithm Hash digest
SHA256 72fbd8843e4548dd722df8952580b20109f52dcb1fb004256e6fc0c1b6658f82
MD5 09be8cf0546b621a3f7aea81b8e8a7ec
BLAKE2b-256 664b11940fcf5af0fb8197bb2698dbf0f7ec71696be460fb7b005491cfb8b5a4

See more details on using hashes here.

File details

Details for the file truefalsepython-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: truefalsepython-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 6.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/58.1.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.3

File hashes

Hashes for truefalsepython-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ffe643bd1cf1482848de8347cd0df2ab3b2b3ef103dc2b67129020b7ca67de4d
MD5 efab943ad64bd8f9f0b40645bddfad9d
BLAKE2b-256 40192b6a0e04c631656d2ac045e7d35748e6af955d4c06dc5924072d52453b7f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page