Skip to main content

pyctlib

Introduction

Package pyctlib is the fundamental package for project PyCTLib, a powerful toolkit for python development. This package provides basic functions for fast python v3.6+ programming. It provides easy communication with the inputs and outputs for the operating systems. It provides quick try-catch function touch, useful types like vector, timing tools like timethis and scope as long as manipulation of file path, reading & writing of text/binary files and command line tools.

Installation

This package can be installed by pip install pyctlib or moving the source code to the directory of python libraries (the source code can be downloaded on github or PyPI).

pip install pyctlib

Basic Types

vector

vector is an improved implement of list for python. In addition to original function for list, it has the following advanced usage:

In [1]: from pyctlib.basictype import vector                                         

In [2]: a = vector([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])                                  

In [3]: a.map(lambda x: x * 2)                                                       
Out[3]: [2, 4, 6, 8, 10, 12, 14, 16, 18, 20]

In [4]: a.filter(lambda x: x % 2 == 0)                                               
Out[4]: [2, 4, 6, 8, 10]

In [5]: a.all(lambda x: x > 1)                                                       
Out[5]: False

In [6]: a.any(lambda x: x == 2)                                                      
Out[6]: True

In [7]: a[a > 7] = 7                                                                 

In [8]: a                                                                            
Out[8]: [1, 2, 3, 4, 5, 6, 7, 7, 7, 7]

In [9]: a.reduce(lambda x, y: x + y)                                                 
Out[9]: 49

In [10]: a.index(lambda x: x % 4 == 0)                                               
Out[10]: 3

File Management

Timing Tools

scope

>>> from pyctlib import scope, jump
>>> with scope("name1"):
...     print("timed1")
...
timed1
[name1 takes 0.000048s]
>>> with scope("name2"), jump:
...     print("timed2")
...
>>>

timethis

>>> from pyctlib import timethis
>>> @timethis
... def func(): print('timed')
... 
>>> func()
timed
[func takes 0.000050s]

Touch function

>>> from pyctlib import touch
>>> touch(lambda: 1/0, 'error')
'error'
>>> touch('a')
>>> a = 4
>>> touch('a')
4

Acknowledgment

@Yiteng Zhang, Yuncheng Zhou: Developers

Metadata

Release files for zytlib 0.3.350

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

Built distribution (wheel)

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

Release files / zytlib-0.3.350-py3-none-any.whl

Download URL zytlib-0.3.350-py3-none-any.whl
Size 75.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fcfc263c965e5039eec4502e1a0bd7973282c6904e05735c502af96c90fc95ff
BLAKE2b-256 checksum
How to use checksums
9830700901abb424f018d0c0bf2f03f37293b8aa32c6f16899cf14494b674e96
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.12

Release history Release notifications | RSS feed

This release

0.3.350 This release

1 release file

0.3.345

1 release file

0.3.344

1 release file

0.3.343

1 release file

0.3.342

1 release file

0.3.341

1 release file

0.3.340

1 release file

0.3.339

1 release file

0.3.338

1 release file

0.3.337

1 release file

0.3.333

1 release file

0.3.332

1 release file

0.3.331

1 release file

0.3.330

1 release file

0.3.329

1 release file

0.3.328

1 release file

0.3.327

1 release file

0.3.326

1 release file

0.3.325

1 release file

0.3.324

1 release file

0.3.323

1 release file

0.3.322

1 release file

0.3.321

1 release file

0.3.320

1 release file

0.3.319

1 release file

0.3.317

1 release file

0.3.298

1 release file

0.3.297

1 release file

0.3.296

1 release file

0.3.293

1 release file

0.3.288

1 release file

0.3.287

1 release file

0.3.286

1 release file

0.3.285

1 release file

0.3.284

1 release file

0.3.283

1 release file

0.3.279

1 release file

0.3.278

1 release file

0.3.272

1 release file

0.3.271

1 release file

0.3.270

1 release file

0.3.269

1 release file

0.3.268

1 release file

0.3.267

1 release file

0.3.266

1 release file

0.3.265

1 release file

0.3.264

1 release file

0.3.263

1 release file

0.3.262

1 release file

0.3.261

1 release file

0.3.260

1 release file

0.3.259

1 release file

0.3.258

1 release file

0.3.257

1 release file

0.3.256

1 release file

0.3.255

1 release file

0.3.254

1 release file

0.3.253

1 release file

0.3.252

1 release file

0.3.251

1 release file

0.3.250

1 release file

0.3.249

1 release file

0.3.248

1 release file

0.3.245

1 release file

0.3.244

1 release file

0.3.243

1 release file

0.3.242

1 release file

0.3.240

1 release file

0.3.222

1 release file

0.3.221

1 release file

0.3.220

1 release file

0.3.219

1 release file

0.3.218

1 release file

0.3.217

1 release file

0.3.216

1 release file

0.3.215

1 release file

0.3.214

1 release file

0.3.213

1 release file

0.3.212

1 release file

0.3.211

1 release file

0.3.210

1 release file

0.3.209

1 release file

0.3.208

1 release file

0.3.207

1 release file

0.3.206

1 release file

0.3.205

1 release file

0.3.204

1 release file

0.3.203

1 release file

0.3.202

1 release file

0.3.201

1 release file

0.3.200

1 release file

0.3.199

1 release file

0.3.198

1 release file

0.3.197

1 release file

0.3.196

1 release file

0.3.195

1 release file

0.3.194

1 release file

0.3.179

1 release file

0.3.178

1 release file

0.3.177

1 release file

0.3.176

1 release file

0.3.175

1 release file

0.3.174

1 release file

0.3.173

1 release file

0.3.172

1 release file

0.3.171

1 release file

0.3.170

1 release file

0.3.169

1 release file

0.3.168

1 release file

0.3.167

1 release file

0.3.166

1 release file

0.3.165

1 release file

0.3.164

1 release file

0.3.163

1 release file

0.3.162

1 release file

0.3.161

1 release file

0.3.160

1 release file

0.3.159

1 release file

0.3.158

1 release file

0.3.157

1 release file

0.3.156

1 release file

0.3.155

1 release file

0.3.154

1 release file

0.3.153

1 release file

0.3.152

1 release file

0.3.151

1 release file

0.3.150

1 release file

0.3.149

1 release file

0.3.148

1 release file

0.3.147

1 release file

0.3.146

1 release file

0.3.145

1 release file

0.3.144

1 release file

0.3.143

1 release file

0.3.142

1 release file

0.3.141

1 release file

0.3.140

1 release file

0.3.139

1 release file

0.3.138

1 release file

0.3.137

1 release file

0.3.136

1 release file

0.3.135

1 release file

0.3.134

1 release file

0.3.133

1 release file

0.3.132

1 release file

0.3.131

1 release file

0.3.130

1 release file

0.3.129

1 release file

0.3.128

1 release file

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