Saravanan666/pypi-org huggingface dataset:
Package: simple-blast
simple_blastThis is a library that provides a very basic wrapper around ncbi-blast+.
Currently, the library supports searches withblastnonly, but I may expand
the library to include wrappers for other BLAST executables if I need them.RequirementsThis library depends on Pandas for parsing BLAST output. The library has been
tested with Pandas 1.5.3, but it likely works with other versions.Of course, this library assumes that ncbi-blast+ is installed. The library has
been tested with ncbi-blast 2.12.0+, and it likely works with newer versions of
the software as well.Basic usageYou can define ablastnsearch to be carried out using theBlastnSearchclass.BlastnSearchobjects are constructed with two required
arguments—the subject sequence and the query sequence files, in that
order. For example, to set up abalstnsearch for sequences inseqs1.fastaagainst those inseqs2.fasta, you could construct aBlastnSearchobject like
this:fromsimple_blastimportBlastnSearchsearch=BlastnSearch("seqs2.fasta","seqs1.fasta")The BLAST search is not carried out until you ask for the results by accessing
thehitsproperty of the search. This property returns a Pandas dataframe
containing the HSPs identified in the BLAST search.results=search.hitsThe columns in the output may be configured by passing either theout_columnsoradditional_columnsarguments when constructing theBlastnSearch. The
former argument overrides the set of output columns; the latter argument is
added to the list of default output columns.You can also specify an e-value cutoff through theevalueargument.DB cachesWhen the same sequence file is used as a subject in multiple searches, it can be
efficient to build a BLAST database up front. TheBlastDBCacheclass can be
used to handle this mostly automatically. To make aBlastDBCache, you need
to specify the location of the on the file system.fromsimple_blastimportBlastDBCachecache=BlastDBCache("cache_dir")To add a file to the cache, use themakedbmethod.cache.makedb("seqs2.fasta")When constructing aBlastnSearchobject, give it theBlastDBCacheas thedb_cacheparameter to make theBlastnSearchobject use the cache for
searches.search=BlastnSearch("seqs2.fasta","seqs1.fasta",db_cache=cache)Nowsearchwill use the database we created forseqs2.fasta.
Package: simple-blockchain
Copyright (c) 2021 Aleksander SadowskiPermission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the “Software”), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.Description: # Simplified BlockchainThis simplified model of a blockchain was created to help students understand the blockchain technology, which is also the technology behind the well known crypto-currency Bitcoin.## How to use
Create your own blockchain in 3 easy steps.### 1. Create blockchain`python blockchain = Blockchain() `### 2. Add transactions`python transaction_1 =Transaction("AleksanderSadowski", "Wiktor Domaradzki", 1.00) transaction_2 =Transaction("AleksanderSadowski", "Wiktor Domaradzki", 2.50) transaction_3 =Transaction("WiktorDomaradzki", "Aleksander Sadowski", 3.50)blockchain.add_transactions([transaction_1,transaction_2, transaction_3]) `### 3. Display blockchain`python blockchain.display() `Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Education
Classifier: Operating System :: Microsoft :: Windows :: Windows 10
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Package: simplebloom
simplebloom is a (probably) dumb but fast bloom filter.
To quoteWikipedia:A Bloom filter is a space-efficient probabilistic data structure,
conceived by Burton Howard Bloom in 1970, that is used to test
whether an element is a member of a set.
False positive matches are possible, but false negatives are not
– in other words, a query returns either “possibly in set” or
“definitely not in set”.
Elements can be added to the set, but not removed […];
the more items added, the larger the probability of false positives.The includedBloomFilterclass is quite dumb as it’s fixed size,
only supports strings, and always uses the blake2s hash function included
with Python 3.6+.
But at least it’s fast, hey?Speed~1.4 million elements/s on an i7-6700HQ, both adding and checking.UsageNote that around 98% of the execution time is spent creating UUIDs.import uuid
from simplebloom import BloomFilter

keys = [uuid.uuid4().hex for _ in range(100000)]
bf = BloomFilter(len(keys))

for k in keys:
    bf += k

with open('test.filter', 'wb') as fp:
    bf.dump(fp)

with open('test.filter', 'rb') as fp:
    bf = BloomFilter.load(fp)

for k in keys:
    assert k in bf

other_keys = [uuid.uuid4().hex for _ in range(1000000)]
fp = 0
for k in other_keys:
    fp += k in bf
print(bf.false_positive_prob, fp / len(other_keys))The BloomFilter classA simple but fast bloom filter.
Elements must be strings.Add an element and check whether it is contained:bf = BloomFilter(1000)
bf += 'hellobloom'
assert 'hellobloom' in bffalse_positive_probdefaults to1 / num_elements.The number of bits in the filter isnum_bits = num_elements * log(false_positive_prob) / log(1 /2**log(2)),
rounded to the next highest multiple of 8.The number of hash functions used isnum_hashes = round(num_bits / num_elements * log(2)).Parameters:num_elements: expected max number of elements in the filter
false_positive_prob: desired approximate false positive probabilityBloomFilter.__iadd__/ add elementUse the “inplace add” syntax to add elementsbf += k,
where bf is theBloomFilterandka string.BloomFilter.__contains__/ contains elementUse the “contains” syntax to check if an element is (probably)
in the filterk in bf,
where bf is theBloomFilterandka string.BloomFilter.loadLoad a filter from a path or file-like:bf = BloomFilter.load('bloom.filter')

with open('bloom.filter', 'rb') as fp:
    bf = BloomFilter.load(fp)Parameters:fp: path or file-likeBloomFilter.loadsLoad a filter from a buffer:data = bf.dumps()
bf = BloomFilter.loads(data)Parameters:data: filter dataBloomFilter.dumpDump filter to a path or file-like:bf.dump('bloom.filter')

with open('bloom.filter', 'wb') as fp:
    bf.dump(fp)Parameters:fp: path or file-likeBloomFilter.dumpsReturns filter data as buffer:data = bf.dumps()
bf = BloomFilter.loads(data)DevelopingExtension code is generated by Cython.
Install Cython to make and build changes to the extension.
Package: simplebot
SimpleBotAn extensible Delta Chat bot.InstallTo install the latest stable version of SimpleBot run the following command (preferably in avirtual environment):pipinstallsimplebotTo test unreleased version:pipinstallgit+https://github.com/simplebot-org/simplebot⚠️ NOTE:If Delta Chat Python bindings package is not available for your platform you will need to compile and install the bindings manually, checkdeltachat documentationfor more info.Build with docker# building imagedockerbuild-tsimplebot.# running container with simplebot# "/home/bot_volume" absolute path for storing bot data on host systemdockerrun-it-v/home/bot_volume:/root/.simplebotsimplebotbashIn container bash you can do same bot running as inquick start sectionQuick Start: Running a bot+plugins(Replace variables$ADDRand$PASSWORDwith the email and password for the account the bot will use)Add an account to the bot:simplebotinit"$ADDR""$PASSWORD"Install some plugins:pipinstallsimplebot-echoStart the bot:simplebotservePluginsSimpleBot is a base bot that relies on plugins to add functionality.Everyone can publish their own plugins, search in PyPI to discover coolSimpleBot plugins⚠️ NOTE:Plugins installed as Python packages (for example withpip) are global to all accounts you register in the bot, to separate plugins per account you need to run each account in its own virtual environment.Creating per account pluginsIf you know how to code in Python, you can quickly create plugins and install them to tweak your bot.Lets create an "echo bot", create a file namedecho.pyand write inside:importsimplebot@simplebot.filterdefecho(message,replies):"""Echoes back received message."""replies.add(text=message.text)That is it! you have created a plugin that will transform simplebot in an "echo bot" that will echo back any text message you send to it. Now tell simplebot to register your plugin:simplebotplugin--add./echo.pyNow you can start the bot and write to it from Delta Chat app to see your new bot in action.Check theexamplesfolder to see some examples about how to create plugins.Note for usersSimpleBot usesAutocryptend-to-end encryption
but note that the operator of the bot service can look into
messages that are sent to it.CreditsSimpleBot is based ondeltabotSimpleBot logo was created by Cuban designer "Dann".
Package: simplebot-downloader
“Downloader” SimpleBot PluginASimpleBotplugin that allows to download files by email/DeltaChat.InstallTo install run:pip install simplebot-downloaderCustomizationBy default the maximum file size allowed is 150MB, to change it, pass the number of bytes as follows:simplebot -a bot@example.com db -s simplebot_downloader/max_size 10485760By default the file will be sent in several emails split in chunks of 15728640 Bytes (15MB), to change it:simplebot -a bot@example.com db -s simplebot_downloader/part_size 10240By default there is a delay of 60 seconds between each sent chunk, to change it:simplebot -a bot@example.com db -s simplebot_downloader/delay 120
Package: simplebot-encryption-error
Encryption ErrorASimpleBotplugin that adds a filter to reply back a warning message when the bot receive a message that can’t be decrypted so the user receives the bot’s new public key and encryption works again.This can happen if you change the bot’s encryption key or re-create the bot account.InstallTo install run:pip install simplebot-encryption-errorChangelog1.0.0initial release
Package: simplebot-instantview
ASimpleBotplugin that allows users to preview web sites inDelta Chat.InstallTo install run:pip install simplebot-instantviewCustomizationBy default maximum file size is 10485760 (10MB), to customize:simplebot -a bot@example.com db -s simplebot_instantview/max_size 5242880To set the Twitter proxy site used for Twitter links:simplebot -a bot@example.com db -s simplebot_instantview/twitter_proxy "https://twiiit.com"To set the YouTube proxy site used for YouTube links:simplebot -a bot@example.com db -s simplebot_instantview/youtube_proxy "https://invidious.snopyta.org"To set the Reddit proxy site used for Reddit links:simplebot -a bot@example.com db -s simplebot_instantview/reddit_proxy "https://teddit.net"To set the Instagram proxy site used for Intagram links:simplebot -a bot@example.com db -s simplebot_instantview/instagram_proxy "https://bibliogram.snopyta.org"
Package: simplebot-mastodon
A Mastodon <-> DeltaChat bridge plugin forSimpleBot.If this plugin has collisions with commands from other plugins in your bot, you can set a command prefix like/masto_for all commands:simplebot -a bot@example.com db -s simplebot_mastodon/cmd_prefix masto_InstallTo install run:pip install simplebot-mastodonUser GuideTo log in with OAuth, send a message to the bot:/login mastodon.socialreplace “mastodon.social” with your instance, the bot will reply with an URL that you should open to grant access to your account, copy the code you will receive and send it to the bot.To log in with your user and password directly(not recommended):/login mastodon.social me@example.com myPassw0rdOnce you log in, A “Home” and “Notifications” chats will appear, in the Home chat you will receive your Home timeline and any message you send there will be published on Mastodon. In the Notifications chat you will receive all the notifications for your account.If someone sends you a direct message in a private 1:1 conversation, it will be shown as a new chat where you can chat in private with that person, to start a private chat with some Mastodon user, send:/dm friend@example.comand the chat with “friend@example.com” will pop up.To logout from your account:/logoutFor more info and all the available commands(follow, block, mute, etc), send this message to the bot:/help
Package: simplebot-stickers
SimpleBotplugin that allows users to get stickers packs and convert normal images to stickers.To get sticker packs, browsehttps://signalstickers.com/and copy the URL of the pack you want (the link in the “+ Add to Signal” button, an URL starting withhttps://signal.art/addstickers) and send the pack URL to the bot in private, the bot will send you a zip with the sticker pack.To create an sticker from a normal image send the image to the bot and it will send you back the image as sticker.Send any text to the bot to search packs matching the given text.Send an emoji to the bot to get a random sticker associated with that emoji.By default the bot will upload packs that are too big tohttps://0x0.st/, you can change the cloud server with:simplebot -a bot@example.com db -s simplebot_stickers/cloud "https://example.com"InstallTo install run:pip install simplebot-stickers
Package: simplebot-tgchan
ASimpleBotplugin that allows to subscribe to Telegram channels from Delta Chat.InstallTo install run:pip install simplebot-tgchanConfigureSeehttps://github.com/simplebot-org/simplebotto know how to configure the bot with an e-mail account.Before you start using the bot, you need to get your own API ID and hash, go tohttps://my.telegram.org/and get them then configure the bot:simplebot -a bot@example.com db -s simplebot_tgchan/api_id "12345"
simplebot -a bot@example.com db -s simplebot_tgchan/api_hash "0123456789abcdef0123456789abcdef"Then you must provide a phone number for the bot to use, to start session in Telegram:simplebot -a bot@example.com loginAfter entering the verification code you received in Telegram or via SMS, start the bot:simplebot -a bot@example.com serveThen you can start subscribing to Telegram channels with/subcommand writting to the bot address
in Delta Chat.
Package: simplebot-tggroups
ASimpleBotplugin that allows to bridge Telegram and Delta Chat groups.For channel subscriptions use:https://github.com/simplebot-org/simplebot_tgchanInstallationTo install run:pip install simplebot-tggroupsTo convert Delta Chat voice messages to mp3 before sending them to the Telegram side,pydubis used, you might need to installffmpegin your
system, check:https://github.com/jiaaro/pydub#dependencies, for example to install it in an
apt-based system:sudo apt install ffmpegConfigurationSeehttps://github.com/simplebot-org/simplebotto know how to configure the bot with an e-mail account.Before you start using the bot, you need to get your own API ID and hash, go tohttps://my.telegram.org,
you also need a bot token, got to@BotFatheron Telegram and create a bot,
then to set API ID, API hash and bot token, execute:simplebot -a bot@example.com telegramAfter configuration you can start the bot:simplebot -a bot@example.com serveThen you can start bridging Telegram and Delta Chat groups, send/helpto the bot in Delta Chat for
more info.To bridge a Telegram group to a Delta Chat group:Add the bot in Telegram to your group.Send/idcommand in the Telegram group, copy the ID returned by the bot.Add the bot in Delta Chat to your group.Send/bridge 1234where1234is the group ID obtained in the Telegram group.Then all messages sent in both groups will be relayed to the other side.Tweaking Default ConfigurationYou can tweak the maximum size (in bytes) of attachments the bot will bridge:simplebot -a bot@example.com telegram --max-size 5242880By default the bot will download attachments of up to 5MB.
Package: simplebot-translator
🌎 Translator plugin forSimpleBot.This plugin registers the/trcommand that end-users can use to
translate text. Example:/tr en es hello world.InstallTo install run:pip install simplebot-translatorTo configure default engine use:simplebot db -s simplebot_translator/engine deeplTo configure default language used in filter use:simplebot db -s global/language enTo disable the default filter and only allow to translate with commands:simplebot db -s global/filter_enabled noYou may need to install other dependencies to make some engines work, check:https://github.com/UlionTse/translatorsAvailable enginesgoogleyandexbingsogoubaidutencentyoudaoalibabadeepl
Package: simplebot-writefreely
SimpleBotplugin that allows Delta Chat users to publish in WriteFreely instances.If this plugin has collisions with commands from other plugins in your bot, you can set a command prefix like/wf_for all commands:simplebot -a bot@example.com db -s simplebot_writefreely/command_prefix wf_InstallTo install run:pip install simplebot-writefreely
Package: simplebox
工具箱主要提供以下功能：
1、提供list的流式调用。
2、str新增一些工具方法。
3、增加around装饰器，提供对前置和后置等钩子方法的执行。
4、log模块增加trace功能，以及装饰器配套模块。
5、http模块提供装饰器用法。
6、提供对函数参数校验的功能。
7、提供后台执行python程序的能力。
8、提供json转实体对象的能力。
Package: simplebrainviewer
SimpleBrainViewerA simple brain viewer using matplotlibWhat is this?Pretty self-explanatory... It's a simple brain viewer written
with matplotlib. Useful if you just want to view a volume quickly
directly in python.UsageYou can call the BrainViewer from python or the command line (via nifti file or any other nibabel compatible format):importnibabelasnibimportsimplebrainviewerassbv# load a volumeimg=nib.load('/a/nifti/file')# plot the imgsbv.plot_brain(img)# you can also display numpy arrayssbv.plot_brain(img.get_fdata())Command Line Usageusage: sbv [-h] volume

View a brain volume

positional arguments:
  volume      brain volume to view

options:
  -h, --help  show this help message and exit
Package: simplebst
Simple Binary Search Tree is a simple implementation of a binary search treeFree software: MIT licenseDocumentation:https://simplebst.readthedocs.org.FeaturesTo use Simple Binary Search Tree in a project:# At minimal, you'll need to import simplebst.Node
from simplebst import Node

# Create a single element tree with value of 23
# Its left and right sub-trees are set to None
tree = Node(23)Get the value of a Node:tree.get_value()Get the left/right child Node of a Node:tree.get_left()
tree.get_right()Insert a new node into the tree:# Import simplebst.utils.insert_node
from simplebst.utils import insert_node

# Insert a node will modify the tree you specify
# So, we'll use our previous example of "tree"
insert_node(tree, 17)

# If you were curious you should see the correct
# value if you do the following
tree.get_left().get_value()

# Let's fill the tree with values
for value in [18, 27, 53, 11]:
    insert_node(tree, value)For more detailed usage, please see the usage documentation:https://simplebst.readthedocs.org/en/latest/usage.htmlHistory0.1.0 (2014-09-11)First release on Github.0.2.0 (2014-09-19)Code cleanup and updated utils and traversals0.3.0 (2014-10-08)Added the following traversals:Pre-orderPost-orderLevel-order0.4.0 (2014-10-16)Added tree_height() utilAdded insert_node() unit tests that I missed previously (yay for code coverage!)0.4.1 (2014-10-22)Updated setup.py to support nose as its test suite So`python setup.py test`can be run successfully.
Package: simplebus
SimpleBus is a messaging library for Python 3. It has been designed to be simple and easy to use.
SimpleBus is still under heavy development so next versions might break compatibility.FeaturesAuto recovery whether connection is dropped.Multiple transports, amqp implemented so far.Channel pooling for amqp transport.Retry logic for all messages received, it supports delay between retries.Concurrent threads receiving messages from a specified queue.Dead letter, messages that fail all retires are send to an dead letter queue.Custom serialization, json and msgpack implemented so far.Message compression, gzip implemented so far.… more comingDocumentationSoon… take a look at theexamplesto see how it works.InstallationYou can install SimpleBus via Python Package Index (PyPi),:$ pip install simplebusTo use AMQP transport you need to install theamqp-stormlibrary,:$ pip install amqp-stormFeedbackPlease use theIssuesfor feature requests and troubleshooting usage.
Package: simple_cache
A simple caching utility in Python 3.simple_cacheuses thepicklemodule to write anykey : valuepairs to a file on disk.It was written as an easy way to cache http requests for
local use. It can possibly be used for caching any data,
as long as thekeys are hashable and thevalues are
pickleable.It also provides a decorator to cache function calls directly.RequirementsOnly standard libraries are used, so there are no dependencies.Installingpip install simple_cacheOr if you like, you can just download thesimple_cache.pyfile and
import it locally.UsageEach cache file contains a single dictionary, acting as the namespace
for that cache. Within the file, you can set and retrieve anykey : valuepairs as needed.When setting a key, you must give attlvalue, or time to live, in seconds.
This value determines the amount of time that value will be considered valid.
After that, the value is considered expired, and will not be returned.Calls to a non-existent cache file, a non-existent key, or an expired key
all  returnNone.You can set a key with a new value before or after it expires.Whenever you ask the cache for a value, and it happens to be expired, the item
is deleted from the file. You can also manually ask the cache file at any time,
to prune all currently expired items.APIimport simple_cacheUsing the decorator format:Using the same cache file for multiple functions with a decorator might
cause problems. The decorator uses the*args, **kwargsof the function as a key,
so calling to different functions with the same arguments will cause a clash.You can specify a custom filename (and ttl) with the decorator format, overriding
the default values.Please note that the decorator format only supports args and kwargs withimmutabletypes.
If one of your arguments is mutable (e.g. a list, or a dictionary), the decorator won’t work.@simple_cache.cache_it()    # uses defaults: filename = "simple.cache", ttl = 3600
def some_function(*args, **kwargs):
    # body
    return value@simple_cache.cache_it(filename="some_function.cache", ttl=120)
def some_function(*args, **kwargs):
    # body
    return valueUsing the module functions:Setting a key and value:simple_cache.save_key(filename, key, value, ttl)Retrieving a value:simple_cache.load_key(filename, key)Pruning all expired items in a file:simple_cache.prune_cache(filename)Loading the whole cache dictionary from a file (possibly
for debugging or introspection):simple_cache.read_cache(filename)Writing a whole dictionary to a file,overwriting any
previous data in the file(possibly for initalizing a
cache by batch writing multiple items):simple_cache.write_cache(filename, cache)filenameis a string containing a valid filenamekeyis any hashable type, and must be unique within
each cache file (otherwise will overwrite)valueis any Python type supported by thepicklemodulettlis an integer or float, denoting the number of seconds
that the item will remain valid before it expirescacheis a dictionary containing the key:value pairsLicensesimple_cacheis open sourced under GPLv3.