Skip to main content

StringDataDeque

Useful when building a string from data that can be converted into a string, in parts.

Installation

https://pypi.org/project/StringDataDeque/

pip install StringDataDeque

Uses

This is designed to be a drop-in replacement for when you might want to append to a string in a loop.

Benefits

  • Around 5 times faster than the naive implementation of appending to a string, such as
    x = ""
    for x in collection:
        x+="new string"
    
  • Provides many extra features that help simply code.

Examples

sd = StringDeque(sep="\n")
for x in collection:
    sd += x
# StringDeque is a specialization of StringDataDeque where conversion func is "str"
# this allows any datatype to be used which can convert to str
sd += 1
print(sd)

You can also pipe data into the StringDeque

sd = StringDeque()
sd = [1,2,3,4,5] | sd
# or
sd |= [1,2,3,4,5]

StringDataDeque implements the "contains" method so you can search within it

sd = StringDeque(["line_one","line_two"],sep="\n")
if "line_one" in sd:
    print("yes")

If you need more control over how data is added to the deque either use StringDataDeque or one of its subclasses.

# convert_func is called when data is added, and format_func is called when data is printed.
int_sdd =StringDataDeque(data="test", convert_func=int, format_func=str,sep=" ")
int_sdd |= ["1","2","3","4","5"]
assert int_sdd[0] == 1
assert str(int_sdd) == "1 2 3 4 5"

Metadata

Release files for StringDataDeque 1.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for StringDataDeque 1.2.1
File Size Uploaded
stringdatadeque-1.2.1.tar.gz 51.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for StringDataDeque 1.2.1
File Interpreter ABI Platform
StringDataDeque-1.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 86.8 kB

Release files / stringdatadeque-1.2.1.tar.gz

Download URL stringdatadeque-1.2.1.tar.gz
Size 51.2 kB
Tags Source
SHA-256 checksum
How to use checksums
98ced0efa2f956d543f0650799d7979d0df1229bb5d0e17710136c001454107f
BLAKE2b-256 checksum
How to use checksums
85ddeb41aa7ec9ecbcd6e0ae3cf7d4d7e6f65e3f5bdd6b07ec9c24563f9446bc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.0.0 CPython/3.12.3

Release files / StringDataDeque-1.2.1-py3-none-any.whl

Download URL StringDataDeque-1.2.1-py3-none-any.whl
Size 35.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
cc1adf86f6ba1041c2be4da2682f9545d83d8ff24ebcfc2397b3b05afd823cdc
BLAKE2b-256 checksum
How to use checksums
556a88247f8226a7d7709bc3fac57efa97b0bbc385a7dae8993d33e1daf27402
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.0.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

1.2.1 This release

2 release files

1.2.0

2 release files

1.1.3

2 release files

1.1.1

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page