Saravanan666/pypi-org huggingface dataset:
Package: prinpy
prinPypip install prinpyInspired bythis R package, prinPy brings principal curves to Python.What prinPy doesPrinPy has local and global algorithms for computing principal curves.What is a Principal Curve?A principal curve is a smooth n-dimensional curve that passes through the middle of a dataset. Principal curves are a dimensionality reduction tool analogous to a nonlinear principal component. PCs have uses in GPS data, image recognition, bioinformatics, and so much more.Local AlgorithmsLocal algorithms work on a step-by-step basis. Starting at one end of the curve, it will attempt to make segments that meet an acceptable error threshold as it moves from one end of the curve to the other. Once the algorithm can connect the current point to the end point, the algorithm terminates and a curve is interpolated through the segments. PrinPy currently has two local algorithms:CLPC-g (Greedy Constraint Local Principal Curve)1CLPC-s (One-Dimensional Search Constraint Local Principal Curve)1CLPC-g will be faster and is fine for simpler curves. CLPS-s has the potential to be much more accurate at the expense of speed for more difficult curves. After fitting a curve, prinPy has the ability to project to the curve.Global AlgorithmsGlobal algorithms, unlike local algorithms, are more like minimization problems. Given a dataset, a global algorithm might make an initial guess at a principal curve and adjust it from there.The sole global algorithm as of now performs nonlinear principal component analysis. The global algorithm, called NLPCA in this package, is a neural network implementation.2This algorithm works by creating an autoassociative neural network with a "bottle-neck" layer which forces the network to learn the most important features of the data.Which one should I use?The local algorithms will be better for tightly bunched data, such as digit recogniition or GPS data. The global algorithm is better suited for "clouds" of data or sparsely represented data.Quick-StartView the quickstart notebookhere. Docs will be coming soon!# Example of local PC fittingcl=CLPCG()# Create solver# CLPCG.fit() fits the principal curve. takes x_data, y_data,# and the min allowed error for each step. e_min is acheived# through trial and error, but 1/4 to 1/2 data error is what authors# recommend.cl.fit(xdata,ydata,e_max=.1)cl.plot()# plots curve, optional axes can be passed# Reconstruct curvetcks=cl.spline_ticks# get spline ticksxy=scipy.interpolate.splev(np.linspace(0,1,100),self.spline_ticks)References[1] Dewang Chen, Jiateng Yin, Shiying Yang, Lingxi Li, Peter Pudney,
Constraint local principal curve: Concept, algorithms and applications,
Journal of Computational and Applied Mathematics,
Volume 298,
2016,
Pages 222-235,
ISSN 0377-0427,https://doi.org/10.1016/j.cam.2015.11.041.[2] Mark Kramer, Nonlinear Principal Component Analysis Using
Autoassociative Neural Networks
Package: print2
Print2Simple Examplefromprint2importpprintpprint("Hello world !",prefix="### ",indent="\t",color="green",level=2)Result### Hello world !Advanced examplefromprint2importPPrintpp=PPrint(prefix="* ",level=1)pp.print("""LINE 1LINE 2""")pp.set_level(2)pp.set_prefix("# ")pp.print("""AAAABBBCCCDDDEEEFFF""")pp.inc_level()pp.print("Final")
Package: print2d
print2d : Print 2d array with readabilityReplacement ofprint()for printing 2d array with readability.print2d(mat1, "*" ,mat2, "=", mult)

[[4.  3.  1.  1. ]  * [[1 2 3]  = [[26.  24.  39. ]  
 [6.  2.  4.  8. ]     [5 2 6]     [64.  84.  98. ]  
 [1.1 6.6 1.5 0.1]]    [2 3 1]     [37.6 20.6 45.2]] 
                       [5 7 8]]Available typesPythonlistNumPyndarrayPyTorchTensorInstallpip install print2dUsageImport this modulefrom print2d import *print2d()function gets parameter separated with comma(,).Python listarr1 = [[1,2],[3,4], [5,6]]
arr2 = [[1, 2, 3], [4, 5, 6]]
print2d("arr1", arr1, "arr2", arr2)arr1 [[1, 2]  arr2 [[1, 2, 3]  
      [3, 4]        [4, 5, 6]] 
      [5, 6]]NumPy ndarraynp1 = np.array([[1,2],[3,4], [5,6]])
np2 = np.array([[1, 2, 3], [4, 5, 6]])
print2d("np1", np1, "np2", np2)np1 [[1 2]  np2 [[1 2 3]  
     [3 4]       [4 5 6]] 
     [5 6]]PyTorch Tensortc1 = torch.tensor([[1,2],[3,4], [5,6]])
tc2 = torch.tensor([[1, 2, 3], [4, 5, 6]])
print2d("tc1", tc1, "tc2", tc2)tc1 tensor([[1, 2],  tc2 tensor([[1, 2, 3],  
            [3, 4],              [4, 5, 6]]) 
            [5, 6]])Combinationarr1 = [[1,2],[3,4], [5,6]]
np2 = np.array([[1, 2, 3], [4, 5, 6]])
print2d("arr1", arr1, "np2", np2)arr1 [[1, 2]  np2 [[1 2 3]  
      [3, 4]       [4 5 6]] 
      [5, 6]]
Package: print2message
print2message程序在办公室计算机上运行，想实时了解程序的运行情况或结果？Print2message可以帮你将print内容转发到电子邮件或微信。安装pipinstallprint2message使用新建yaml配置文件，内容如下：basic:
    subject: 测试用
    method: mail
    switch: true
wechat:
    key: SCU*************
mail:
    host: smtp.qq.com
    port: 25
    password: abcdefg
    user_name: 123456789
    sender: 123456789@qq.com
    receiver: 1234567819@qq.combasic.subject：项目名称，作为消息通知的标题basic.method：通知方式，wechat或mailbasic.swith：是否通知，false将不转发print内容，只单纯执行print功能wechat.key：server酱的SCKEY，免费注册mail：邮箱的相关参数使用set_config_path指定配置文件位置examplefrom print2message import set_config_path, printm
import os

current_path = os.path.dirname(os.path.abspath(__file__))

set_config_path(os.path.join(current_path, 'config.yaml'))

if __name__ == "__main__":
    printm('hello print2msg')
Package: printable
PrintableFunctions help for printing tabular data.Installpip3 install printableUsage Examplefromprintableimportreadable,stylesprint(readable(list_of_dict,**styles['full']))$ printable -f x.json
 symbol     desp      last    change   changeper  turnover  changesign  lastupdate
 HSI        恆指      26,623  -468     1.73%      802億     -           2018/10/04 16:09
 HSCEI      國指      10,547  -239     2.21%      257億     -           2018/10/04 16:08
 000001.SH  上證指數  2,821   29       1.06%      1,254億   +           2018/09/28 15:10
 000300.SH  滬深 300  3,438   35       1.04%      949億     +           2018/09/28 15:10
 USDHKD     港匯      7.8337  -0.0037  -0.0472%             -

$ printable -f x.json --grid inner
 symbol    │ desp     │ last   │ change  │ changeper │ turnover │ changesign │ lastupdate
───────────┼──────────┼────────┼─────────┼───────────┼──────────┼────────────┼──────────────────
 HSI       │ 恆指     │ 26,623 │ -468    │ 1.73%     │ 802億    │ -          │ 2018/10/04 16:09
───────────┼──────────┼────────┼─────────┼───────────┼──────────┼────────────┼──────────────────
 HSCEI     │ 國指     │ 10,547 │ -239    │ 2.21%     │ 257億    │ -          │ 2018/10/04 16:08
───────────┼──────────┼────────┼─────────┼───────────┼──────────┼────────────┼──────────────────
 000001.SH │ 上證指數 │ 2,821  │ 29      │ 1.06%     │ 1,254億  │ +          │ 2018/09/28 15:10
───────────┼──────────┼────────┼─────────┼───────────┼──────────┼────────────┼──────────────────
 000300.SH │ 滬深 300 │ 3,438  │ 35      │ 1.04%     │ 949億    │ +          │ 2018/09/28 15:10
───────────┼──────────┼────────┼─────────┼───────────┼──────────┼────────────┼──────────────────
 USDHKD    │ 港匯     │ 7.8337 │ -0.0037 │ -0.0472%  │          │ -          │

$ printable -f x.json --grid full
┌───────────┬──────────┬────────┬─────────┬───────────┬──────────┬────────────┬──────────────────┐
│ symbol    │ desp     │ last   │ change  │ changeper │ turnover │ changesign │ lastupdate       │
├───────────┼──────────┼────────┼─────────┼───────────┼──────────┼────────────┼──────────────────┤
│ HSI       │ 恆指     │ 26,623 │ -468    │ 1.73%     │ 802億    │ -          │ 2018/10/04 16:09 │
├───────────┼──────────┼────────┼─────────┼───────────┼──────────┼────────────┼──────────────────┤
│ HSCEI     │ 國指     │ 10,547 │ -239    │ 2.21%     │ 257億    │ -          │ 2018/10/04 16:08 │
├───────────┼──────────┼────────┼─────────┼───────────┼──────────┼────────────┼──────────────────┤
│ 000001.SH │ 上證指數 │ 2,821  │ 29      │ 1.06%     │ 1,254億  │ +          │ 2018/09/28 15:10 │
├───────────┼──────────┼────────┼─────────┼───────────┼──────────┼────────────┼──────────────────┤
│ 000300.SH │ 滬深 300 │ 3,438  │ 35      │ 1.04%     │ 949億    │ +          │ 2018/09/28 15:10 │
├───────────┼──────────┼────────┼─────────┼───────────┼──────────┼────────────┼──────────────────┤
│ USDHKD    │ 港匯     │ 7.8337 │ -0.0037 │ -0.0472%  │          │ -          │                  │
└───────────┴──────────┴────────┴─────────┴───────────┴──────────┴────────────┴──────────────────┘
Package: printargs
Print a nicely formatted view of anargparse.Namespaceobject
for debugging purposes:import sys
import argparse
import printargs

def main(args):
    printargs.show(args)
    # do somthing with args

def get_argument_parser():
    p = argparse.ArgumentParser()
    p.add_argument('-f', '--foo', action='store')
    p.add_argument('-b', '--bar', action='store', type=int)
    p.add_argument('-o', '--output', action='store', default=sys.stdout)
    return p

if __name__ == "__main__":
    argument_parser = get_argument_parser()
    args = argument_parser.parse_args()
    main(args)To use the output for logging or to edit it use theprintargs.formattedfunction, which returns the string instead of printing it:import sys
import argparse
import printargs

def main(args):
    t = printargs.formatted(args)
    with open('log', 'a') as logfile:
        logfile.write("Test program called with parameters:")
        logfile.write(t)
        logfile.write("\n\n")


def get_argument_parser():
    p = argparse.ArgumentParser()
    p.add_argument('-f', '--foo', action='store')
    p.add_argument('-b', '--bar', action='store', type=int)
    p.add_argument('-o', '--output', action='store', default=sys.stdout)
    return p

if __name__ == "__main__":
    argument_parser = get_argument_parser()
    args = argument_parser.parse_args()
    main(args)InstallationPrintargs can be installed with pip:me@machine:~$ pip install printargsor from the sources:me@machine:~$ git clone https://HenningTimm@bitbucket.org/HenningTimm/printargs.git
me@machine:~$ cd printargs
me@machine:~/printargs$ python setup.py installPlanned featurescurses based output with colorsLicensePrintargs is Open Source and licensed under theMIT
License.
Package: printb
the printb python moduleThis is a small wrapper around thepython-bidiIt has the following api:printb.printb(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)Adds a wrapper for python built-inprintIf any one of the arguments passed via*objectsis a string, then swap it withbidi.algorithm.get_displayprintb.input([prompt])Adds a wrapper for python built-ininput, when a prompt string argument is passed then it is swapped before printingExample usageSee thetest_bidi test fileInstallationpip3 install python-bidiThen install this package:pip3 install printb. See package onpypi
Package: printbetter
DescriptionUse PrintBetter to have a nice prefix before printing anything on the
console output. It also creates a nice log file where you can find
anything that you have printed during the program execution. Take a look
at theGitHub repositoryto learn a bit more or to see the
documentation.Default example:importprintbetteraspbpb.init()pb.info("information")pb.debug("variable debug")pb.warn("warning")pb.err("error")This module was developed by@Gruvw.
Package: print-bot-gen-1
如何執行 Python 程式碼這是一個簡單的 Python 程式碼，當執行時，它將會輸出 "bot-gen-1"。需求Python 3執行要執行程式碼，請導航至包含該程式碼的目錄，並執行以下命令：python print_bot_gen_1.py
Package: printbreakpoint
PrintBreakpointUsebreakpoint()to print out filename, line number, and data. For Python 3.7+Installprintbreakpointwith pip.pip install printbreakpointUpdate thePYTHONBREAKPOINTenvironment variable (available starting in Python
3.7).export PYTHONBREAKPOINT=printbreakpoint.pbNow when you addbreakpoint()to your code, it will show the output fromprintbreakpoint.defsome_function(a):breakpoint()returnaPrintspb | some_file.py:3 in some_functionAny data you pass to thebreakpoint()will be added to the output.Change the environment variable back to the default when you’re ready to
continue usingpdb.export PYTHONBREAKPOINT=
Package: printbuddies
printbuddiesVarious printing utilities and helpers/extenders for therichpackage.Install with:pip install printbuddiesprint_in_place'print_in_place' erases the current line in the terminal and then writes the value of
the 'string' param to the terminal.from printbuddies import print_in_place
import time
#This will print numbers 0-99 to the terminal with each digit overwriting the last.
for i in range(100):
    print_in_place(i)
    time.sleep(0.1)TagTheTagclass is essentially a wrapper to shorten usingrichtags.When aTagis casted to a string it is formatted with surrounding square brackets
and theooroffproperties can be accessed to return the matching closing tag.from printbuddies import Tag
p = Tag("pale_turquoise4")
c = Tag("cornflower_blue")
s = f"{p}This{p.o} {c}is{c.o} {p}a{p.o} {c}string"is equivalent tos = "[pale_turquoise4]This[/pale_turquoise4] [cornflower_blue]is[/cornflower_blue] [pale_turquoise4]a[/pale_turquoise4] [cornflower_blue]string"TheColorMapclass contains twoTagproperties for eachnamed color(except shades of grey, those only have a full name property):
one that's the full name of the color and one that's an abbreviated name, for convenience.This is useful for seeing color options using autocomplete:The class also supports iterating over the tags as well as selecting random colors:TheGradientclass inherits fromlistand can be used to easily apply an arbitrary number of color sweeps across text:TheProgress,BarColumn, andTaskProgressColumnclasses, as well as thetrackfunction are the same as therichversions, just with different default colors, default columns, and additonal keyword arguments.TimerColumnis a subclass ofrich.progress.TimeRemainingColumnthat displays{time_elapsed}<->{time_remaining}with a color gradient.Default columns and colors of this version:TheGridclass is a customized implementation of arichTable.It can minimally be used by passing a list of dictionaries to the constructor and then passing the instance
torich.printorrich.console.Console().print.(All dictionaries should have the same set of keys)from printbuddies import Grid
from rich import print
print(Grid(list_of_dicts))Being used to display a database schema:
Package: print-chat
Small print tool for implementing chat in the terminal.https://pypi.org/project/print_chat/Usage exampleimportprint_chataspcpct=pc.print_chat()sender='Charls'pct.set_colors([('Charls','green')])whileTrue:post=str(input('> '))ifpost=='exit':breakelse:pct.up_on_occupied_rows(len(post)+len(sender)+2)pct.add_message('Charls',post)pct.close()For testing the main functionality:importprint_chataspcpct=pc.print_chat(time=True)s=0# sender iteratorsenders=['Charls','Max','Karl']pct.set_colors([(senders[0],'green'),(senders[1],'red'),(senders[2],'yellow')])pct.set_header('-Test chat-\n-----------')# adding a header to the dialogwhileTrue:post=str(input('> '))pct.up_on_occupied_rows(len(post)+len(senders[s])+2)command=post.split(' ')ifpost=='exit':breakelifcommand[0]=='remove':pct.remove(int(command[1]))elifcommand[0]=='edit':pct.edit(int(command[1]),' '.join(command[2:]))elifcommand[0]=='reload':pct.reload(int(command[1]))elifcommand[0]=='add_skip':pct.add_skip(int(command[1]),str(' '.join(command[2:])))elifcommand[0]=='edit_skip':pct.edit_skip(int(command[1]),' '.join(command[2:]))elifcommand[0]=='remove_skip':pct.remove_skip(int(command[1]))elifcommand[0]=='add_mark':pct.add_mark(int(command[1]),str(command[2]))elifcommand[0]=='edit_mark':pct.edit_mark(int(command[1]),str(command[2]))elifcommand[0]=='remove_mark':pct.remove_mark(int(command[1]))elifpost=='cs':s=(s+1)%len(senders)# change sender to nextelse:pct.add_message(senders[s],post)pct.close()ImportantNumbering starts at 1, at the end of the message listThis is not a bug this is a featureCreate objectdefault:pct=print_chat.print_chat(time=False)time - show message sending timeMethod list.add_message(sender, text, time=’’, skip=[], mark=[]).add_message_top(sender, text, time=’’, skip=[], mark=[], prnt=True).reload(number).remove(number).edit(number, text).add_skip(number, text).edit_skip(number, text).remove_skip(number).add_mark(number, text).edit_mark(number, text).remove_mark(number).close(clr)                       - closes the dialog, with or without screen clearing.set_header(string).set_colors(colors)               - takes a list [[sender, color],..]colors list:greyredgreenyellowbluemagentacyanwhite.get_num_messages()               - returns the number of messages.get_messages().get_messages_from(sender).up_on_occupied_rows(len_str).up_on_message(number).up_on_rows(number).clear_row()._clear_screen().get_senders()                    - returns a list of dictionariesInstallation$ pip install print_chatorRepository cloning$ git clone https://github.com/IVIGOR13/print_chat.gitTuning$ pip install termcolor
$ pip install colorama
Package: printclean
print-cleanThis script helps prepare photographed documents for printing:Before:After:InstallationInstallPython3.9 or higher, then run:pip install printcleanorpip3 install printcleanUsageprintclean path-to-image [path-to-another-image ...] [--level value] [--lang code1 code2 ...]You can optionally specify the cleanup’s threshold value with--level. The value must be an integer between 0 and 255, inclusive. Larger values produce images with fewer filled pixels. The default is 10.You may also provide your document’s language(s) with the--langparameter, which may help fix the input image’s perspective. Currently, the script can only perform simple rotations.You can find available languages and their codeshere. You might need to specifically install your required language for the Tesseract OCR engine (Windows,Ubuntu,Mac OS).The output image will be saved as a PNG file with the suffix-cleaned.
Package: printcleaner
Printcleaner: the simplest way to remove print statements from your Python codeIs your Python code littered with random print statements from debugging or simply exploring?Printcleaner is a simple CLI that removes all of them with one command. All you need to do is:pip install printcleanerclean < name of your file or directory >Done. Don't worry: comments, formatting, whitespace and everything else in your code will be preserved.
Package: printcolor
printcolorUsage#pytho3.ximportprintcolorpc=printcolor.PrintColor()pc.color(string,show="flash",front="green",back="yellow")#pytho2.ximportprintcolor2pc=printcolor.PrintColor()pc.color("lash","green","yellow",string)color显示样式:
    hlt :  高亮
    underline : 下划线
    flash : 闪烁
字体/背景颜色：
    black : 黑色
    red:    红色
    green:  绿色
    yellow: 黄色
    blue:   蓝色
    carmine:胭脂红
    cyan:   青色
    white:  白色- color
```text
显示样式:
    hlt :  高亮
    underline : 下划线
    flash : 闪烁
字体/背景颜色：
    black : 黑色
    red:    红色
    green:  绿色
    yellow: 黄色
    blue:   蓝色
    carmine:胭脂红
    cyan:   青色
    white:  白色
Package: print-color
print-colorPrint Color is a minimalist approach to terminal color printing in Python. It is a wrapper around theprint()function, and simply allows you to provide extra optional parameters such as:tagtag_colorortag_colourcolororcolourbackgroundformatIt aims to be a customizable logger for your applications, and makes formatting warnings, info messages and errors a breeze.InformationThis project has no dependencies, apart frompytestfor testing.Check out this project onPyPi here.Colors:purple
blue
green
yellow
red
magenta
cyan
white
blackParameter values:tagany stringtag_colorortag_colourcolorcolororcolourcolorbackgroundcolorformatboldunderlineblinkInstallingpip3installprint-colorRequirementspython 3.7^Usagefromprint_colorimportprintprint("Hello world",tag='success',tag_color='green',color='white')print("Error detected",tag='failure',tag_color='red',color='magenta')print("Printing in color",color='green',format='underline',background='grey')ContributingFeel free to add or improve this project :) Just create a pull request and explain the changes you propose.
Note that as this is a very simple project, feature requests should be kept minimal - things like more colors, formats etc would be ideal.CreditsBuilt withPython Poetry.Contributors
Package: printcolorful
以下是使用Markdown格式编写的上述Python代码功能和使用文档：使用文档这段Python代码提供了两个函数，用于在终端中打印彩色的文本框，以增强文本信息的视觉表现。以下是每个函数的详细说明和使用示例。1.print_colored_box_line函数功能描述print_colored_box_line函数用于在终端打印一个含有标题和消息的彩色文本框。这个文本框具有上下边框、居中的标题和消息，用户可以自定义文本和框的颜色及属性（例如加粗）。此函数适用于需要强调显示重要信息或区分文本段落的场景。参数说明title: 文本框中心的标题文本。message: 文本框中的消息文本。attrs: 文本属性列表（例如['bold']表示加粗文本）。text_color: 文本的颜色。box_color: 文本框的颜色。box_width: 文本框的宽度，默认值为80字符。使用示例fromprintkimportprint_colored_box,print_colored_box_lineprint_colored_box_line("警告","请立即检查系统！",attrs=['bold'],text_color='red',box_color='yellow')此示例将在终端打印一个黄色背景框，其中包含红色加粗的“警告”标题和“请立即检查系统！”的消息。2.print_colored_box函数功能描述print_colored_box函数用于在终端打印一个彩色边框的文本框，可以选择为文本添加背景颜色。此函数适合用于突出显示单条信息，通过颜色和边框的变化来吸引用户的注意。参数说明text: 文本框中显示的文本。text_background: 布尔值，指定是否为文本添加背景颜色。text_color: 文本的颜色。box_color: 边框的颜色。background_color: 文本的背景颜色，仅在text_background为 True 时适用。使用示例print_colored_box("操作成功",text_background=True,text_color='green',box_color='green',background_color='on_white')此示例将在终端打印一个绿色边框和文本的文本框，如果支持的话，文本背景为白色。概述通过使用这两个函数，开发者可以在他们的Python应用程序中以视觉上引人注目的方式显示信息，如日志消息、警告或成功提示。自定义文本、背景和边框颜色以及文本属性使得集成这些彩色文本框变得简单，从而提升用户的交互体验。
Package: print-columns
A simple package for printing text to the terminal in columnsExamplefrom print_columns import print_columns


if __name__ == "__main__":
    lorem_ipsum = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
    value = 3
    notes = "This is Lorem Ipsum. It is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout."

    print_columns(
        string=[lorem_ipsum, str(value), notes],
        column_widths=[50, 2, 50],
        colors=["red", "green", "blue"],
    )See the examples/ folder for more.
Package: print-considered-harmful
Switch fromprinttodebugger()and never look back.import debug

debugger() # <-- breaks hereImport this module in your main file to adddebuggeras a builtin
command.DocumentationAll functionsdebugger()
debugger.enable()
debugger.disable()
debug.wrap(function)
debug.sample(function)
function.samplesCallingdebuggeropens theipdbdebugger,import debug

debugger() # <-- breaks hereCallingdebugger.disablefrom the ipdb prompt disables all
breakpoints,import debug

debugger() # <-- breaks here

# >> debugger.disable()
# >> continue

debugger() # <-- does not break hereUsingdebug.wrapsets a function breakpoint,def fun():
    pass

def example():
    fun()

fun = debug.wrap(fun)
example() # <-- breaks above at definition of funUsingdebug.samplecollects function arguments,def fun(a, b=None):
    return

fun = debug.sample(fun)
fun(23)
fun(42, 'hello worlds')

debugger() # <-- breaks here

# >> len(fun.samples)
# 2
# >> fun.samples
# [{0: 23, '$': 529}, {0: 42, 'b': 'hello worlds', '$': 1764}]Usingdebug.logcollects values,for each in range(3):
    debug.log(each)

debugger() # <-- breaks here

# >> debugger.logs
# {'example.py': {2: [0, 1, 2]}}InstallationTo install this package, runpip install print-considered-harmfulContributingBug reports and pull requests are welcome on github at,https://github.com/akuhn/print-considered-harmful
Package: print-ctf
Print recent CTF contests sourced by CTFTime.org
(fromhttps://ctftime.org/calendar/)THIS PACKAGE IS UNOFFICIALUsage` $ print_ctf--weeks=4`History1.0.4: Added ctf_info method1.0.3: Python 3 supported1.0.2: Fixed module directory1.0.1: Fixed installing script1.0.0: First release