Skip to main content

You can easily add numpy.ndarray.shape information to your script as comments.

Project description

Shape Commentator

CircleCI

About

You can easily add numpy.ndarray.shape, torch.Size, other shape and type information at runtime to your script code as comments.
NumPyやPyTorchなどの配列のshape属性や,変数の型の実行時の情報を,スクリプトにコメントとして貼り付けるツールです.

Install

pip install -U shape_commentator

-U means upgrading.

Usage

This tool has two types of usage.
このツールには2つの使い方があります.

Usage 1. Execute this as a Module

Sample_Module

Create Commented Script

  1. Run this script as a module with argument of script name. Command line arguments to the target script are available.
    Pythonのモジュールとしてshape_commentatorを実行してください.引数は,スクリプト名の後にスクリプトに渡したい引数を続けることもできます.
python -m shape_commentator src.py
python -m shape_commentator src.py arg1 arg2 arg3
  1. You get the commented script. For example, you execute shape_commentator to src.py, you get src.py.commented.py.
    src.pyというスクリプトに対して実行すると,src.py.commented.pyが生成されます.

src.py

import numpy as np
a = np.array([1,2,3,4,5,6])
b = np.array([0,1,2,3,4,5])
ab_h = np.hstack((a,b))
ab_v = np.vstack((a,b))
ab = np.dot(a,b)
AA, BB = np.meshgrid(a,b)
i = 1
f = 1.0
c = 1 + 1j
s = "string1"
class A():
    pass
a = A()

src.py.commented.py

import numpy as np
a = np.array([1,2,3,4,5,6])  #_ (6,)
b = np.array([0,1,2,3,4,5])  #_ (6,)
ab_h = np.hstack((a,b))  #_ (12,)
ab_v = np.vstack((a,b))  #_ (2, 6)
ab = np.dot(a,b)  #_ ()
AA, BB = np.meshgrid(a,b)  #_ [(6, 6),(6, 6),]
i = 1  #_ int
f = 1.0  #_ float
c = 1 + 1j  #_ complex
s = "string1"  #_ str
class A():
    pass
a = A()  #_ A

Usage 2. IPython / Jupyter Notebook (Magic Command)

Sample_IPython

To use IPython / Jupyter Notebook magic command,
IPythonやJupyter Notebookでのマジックコマンドの使い方

import shape_commentator

Create Commented Script

コメントを付ける

%%shape
a = np.array([1,2,3,4,5,6])

output

a = np.array([1,2,3,4,5,6])  #_ (6,)

Delete Comments

コメントを消す

%%shape -d
a = np.array([1,2,3,4,5,6])  #_ (6,)

output

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

Tested Python Version

Test scripts are written in these version of Python.
以下のバージョンがテストされています.

  • 3.11.3
  • 3.10.11
  • 3.9.16
  • 3.8.16
  • 3.7.16
  • 3.6.15
  • 3.5.10
  • 2.7.17

Blog

作った経緯などを書いた解説ブログはこちらにあります.
NumPyやPyTorchで使える超便利ツールを作った

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

shape_commentator-0.8.0.tar.gz (8.3 kB view details)

Uploaded Source

File details

Details for the file shape_commentator-0.8.0.tar.gz.

File metadata

  • Download URL: shape_commentator-0.8.0.tar.gz
  • Upload date:
  • Size: 8.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.3

File hashes

Hashes for shape_commentator-0.8.0.tar.gz
Algorithm Hash digest
SHA256 e536e39ca967151209e62b8fb4a236bf5ce080e828038dbac9e960587a560f71
MD5 b0dad755e796a073efb904c17f556ca8
BLAKE2b-256 b28948a99d438168ea08665ac4eb9118dfdc42345688850e4eb1ae0330f57005

See more details on using hashes here.

Supported by

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