KL-Py 0.4.2__tar.gz → 0.4.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (270) hide show
  1. {kl_py-0.4.2 → kl_py-0.4.3}/PKG-INFO +1 -1
  2. {kl_py-0.4.2 → kl_py-0.4.3}/pyproject.toml +1 -1
  3. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/KL_Py.py +181 -45
  4. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/_klang_builtins.py +166 -14
  5. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py.egg-info/PKG-INFO +1 -1
  6. {kl_py-0.4.2 → kl_py-0.4.3}/LICENSE +0 -0
  7. {kl_py-0.4.2 → kl_py-0.4.3}/README.md +0 -0
  8. {kl_py-0.4.2 → kl_py-0.4.3}/setup.cfg +0 -0
  9. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/__init__.py +0 -0
  10. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/_utils.py +0 -0
  11. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/__init__.py +0 -0
  12. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/base.py +0 -0
  13. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/button.py +0 -0
  14. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/calendar.py +0 -0
  15. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/canvas.py +0 -0
  16. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/checkbox.py +0 -0
  17. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/column.py +0 -0
  18. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/combo.py +0 -0
  19. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/error.py +0 -0
  20. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/frame.py +0 -0
  21. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/graph.py +0 -0
  22. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/helpers.py +0 -0
  23. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/image.py +0 -0
  24. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/input.py +0 -0
  25. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/list_box.py +0 -0
  26. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/menu.py +0 -0
  27. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/multiline.py +0 -0
  28. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/option_menu.py +0 -0
  29. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/pane.py +0 -0
  30. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/progress_bar.py +0 -0
  31. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/radio.py +0 -0
  32. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/separator.py +0 -0
  33. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/sizegrip.py +0 -0
  34. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/slider.py +0 -0
  35. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/spin.py +0 -0
  36. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/status_bar.py +0 -0
  37. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/stretch.py +0 -0
  38. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/tab.py +0 -0
  39. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/table.py +0 -0
  40. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/text.py +0 -0
  41. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/elements/tree.py +0 -0
  42. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/themes.py +0 -0
  43. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/tray.py +0 -0
  44. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/FreeSimpleGUI/window.py +0 -0
  45. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/__init__.py +0 -0
  46. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/_custom_pandas.py +0 -0
  47. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/_custom_sqlite.py +0 -0
  48. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/_custom_turtle.py +0 -0
  49. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/_error_classes.py +0 -0
  50. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/_filepaths.py +0 -0
  51. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/_translate.py +0 -0
  52. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/_web_translate.py +0 -0
  53. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/automl.py +0 -0
  54. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/dnd/__init__.py +0 -0
  55. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/drag_and_drop/__init__.py +0 -0
  56. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/export/__init__.py +0 -0
  57. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/export/__main__.py +0 -0
  58. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/export/config.py +0 -0
  59. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/export/dialogs.py +0 -0
  60. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/export/packaging.py +0 -0
  61. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/export/shims.py +0 -0
  62. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/export/ui.py +0 -0
  63. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/export/utils.py +0 -0
  64. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/export/validation.py +0 -0
  65. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/fsgdnd/__init__.py +0 -0
  66. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/fsgui/__init__.py +0 -0
  67. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/__init__.py +0 -0
  68. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/_utils.py +0 -0
  69. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/base.py +0 -0
  70. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/button.py +0 -0
  71. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/calendar.py +0 -0
  72. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/canvas.py +0 -0
  73. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/center.py +0 -0
  74. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/checkbox.py +0 -0
  75. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/column.py +0 -0
  76. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/combo.py +0 -0
  77. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/error.py +0 -0
  78. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/frame.py +0 -0
  79. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/graph.py +0 -0
  80. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/helpers.py +0 -0
  81. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/image.py +0 -0
  82. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/input.py +0 -0
  83. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/list_box.py +0 -0
  84. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/menu.py +0 -0
  85. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/multiline.py +0 -0
  86. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/option_menu.py +0 -0
  87. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/pane.py +0 -0
  88. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/progress_bar.py +0 -0
  89. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/radio.py +0 -0
  90. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/separator.py +0 -0
  91. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/sizegrip.py +0 -0
  92. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/slider.py +0 -0
  93. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/spin.py +0 -0
  94. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/status_bar.py +0 -0
  95. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/stretch.py +0 -0
  96. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/tab.py +0 -0
  97. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/table.py +0 -0
  98. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/text.py +0 -0
  99. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/elements/tree.py +0 -0
  100. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/replace.py +0 -0
  101. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/tray.py +0 -0
  102. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/hindGui/window.py +0 -0
  103. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/k2exe/__init__.py +0 -0
  104. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/k2exe/__main__.py +0 -0
  105. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/k2exe/config.py +0 -0
  106. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/k2exe/dialogs.py +0 -0
  107. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/k2exe/packaging.py +0 -0
  108. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/k2exe/shims.py +0 -0
  109. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/k2exe/ui.py +0 -0
  110. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/k2exe/utils.py +0 -0
  111. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/k2exe/validation.py +0 -0
  112. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/kexe/__init__.py +0 -0
  113. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/kexe/__main__.py +0 -0
  114. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/kexe/config.py +0 -0
  115. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/kexe/dialogs.py +0 -0
  116. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/kexe/packaging.py +0 -0
  117. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/kexe/shims.py +0 -0
  118. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/kexe/ui.py +0 -0
  119. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/kexe/utils.py +0 -0
  120. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/kexe/validation.py +0 -0
  121. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/kl2exe/__init__.py +0 -0
  122. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/kl2exe/__main__.py +0 -0
  123. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/kl2exe/config.py +0 -0
  124. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/kl2exe/dialogs.py +0 -0
  125. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/kl2exe/packaging.py +0 -0
  126. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/kl2exe/shims.py +0 -0
  127. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/kl2exe/ui.py +0 -0
  128. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/kl2exe/utils.py +0 -0
  129. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/kl2exe/validation.py +0 -0
  130. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/klang2exe/__init__.py +0 -0
  131. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/klang2exe/__main__.py +0 -0
  132. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/klang2exe/config.py +0 -0
  133. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/klang2exe/dialogs.py +0 -0
  134. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/klang2exe/packaging.py +0 -0
  135. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/klang2exe/shims.py +0 -0
  136. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/klang2exe/ui.py +0 -0
  137. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/klang2exe/utils.py +0 -0
  138. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/klang2exe/validation.py +0 -0
  139. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/klangexe/__init__.py +0 -0
  140. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/klangexe/__main__.py +0 -0
  141. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/klangexe/config.py +0 -0
  142. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/klangexe/dialogs.py +0 -0
  143. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/klangexe/packaging.py +0 -0
  144. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/klangexe/shims.py +0 -0
  145. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/klangexe/ui.py +0 -0
  146. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/klangexe/utils.py +0 -0
  147. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/klangexe/validation.py +0 -0
  148. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/klexe/__init__.py +0 -0
  149. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/klexe/__main__.py +0 -0
  150. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/klexe/config.py +0 -0
  151. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/klexe/dialogs.py +0 -0
  152. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/klexe/packaging.py +0 -0
  153. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/klexe/shims.py +0 -0
  154. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/klexe/ui.py +0 -0
  155. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/klexe/utils.py +0 -0
  156. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/klexe/validation.py +0 -0
  157. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/ml.py +0 -0
  158. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/np/__init__.py +0 -0
  159. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/pd/__init__.py +0 -0
  160. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/plt/__init__.py +0 -0
  161. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/psgui/__init__.py +0 -0
  162. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/px/__init__.py +0 -0
  163. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/pyexe/__init__.py +0 -0
  164. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/pyexe/__main__.py +0 -0
  165. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/pyexe/config.py +0 -0
  166. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/pyexe/dialogs.py +0 -0
  167. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/pyexe/packaging.py +0 -0
  168. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/pyexe/shims.py +0 -0
  169. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/pyexe/ui.py +0 -0
  170. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/pyexe/utils.py +0 -0
  171. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/pyexe/validation.py +0 -0
  172. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/pysgdnd/__init__.py +0 -0
  173. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/__init__.py +0 -0
  174. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/__version__.py +0 -0
  175. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/_internal_utils.py +0 -0
  176. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/adapters.py +0 -0
  177. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/api.py +0 -0
  178. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/auth.py +0 -0
  179. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/certifi/__init__.py +0 -0
  180. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/certifi/__main__.py +0 -0
  181. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/certifi/core.py +0 -0
  182. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/certifi/py.typed +0 -0
  183. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/certs.py +0 -0
  184. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/charset_normalizer/__init__.py +0 -0
  185. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/charset_normalizer/__main__.py +0 -0
  186. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/charset_normalizer/api.py +0 -0
  187. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/charset_normalizer/cd.py +0 -0
  188. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/charset_normalizer/cli/__init__.py +0 -0
  189. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/charset_normalizer/cli/__main__.py +0 -0
  190. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/charset_normalizer/constant.py +0 -0
  191. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/charset_normalizer/legacy.py +0 -0
  192. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/charset_normalizer/md.py +0 -0
  193. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/charset_normalizer/models.py +0 -0
  194. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/charset_normalizer/py.typed +0 -0
  195. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/charset_normalizer/utils.py +0 -0
  196. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/charset_normalizer/version.py +0 -0
  197. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/compat.py +0 -0
  198. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/cookies.py +0 -0
  199. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/exceptions.py +0 -0
  200. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/help.py +0 -0
  201. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/hooks.py +0 -0
  202. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/idna/__init__.py +0 -0
  203. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/idna/codec.py +0 -0
  204. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/idna/compat.py +0 -0
  205. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/idna/core.py +0 -0
  206. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/idna/idnadata.py +0 -0
  207. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/idna/intranges.py +0 -0
  208. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/idna/package_data.py +0 -0
  209. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/idna/py.typed +0 -0
  210. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/idna/uts46data.py +0 -0
  211. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/models.py +0 -0
  212. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/packages.py +0 -0
  213. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/sessions.py +0 -0
  214. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/status_codes.py +0 -0
  215. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/structures.py +0 -0
  216. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/__init__.py +0 -0
  217. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/_base_connection.py +0 -0
  218. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/_collections.py +0 -0
  219. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/_request_methods.py +0 -0
  220. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/_version.py +0 -0
  221. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/connection.py +0 -0
  222. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/connectionpool.py +0 -0
  223. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/contrib/__init__.py +0 -0
  224. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/contrib/emscripten/__init__.py +0 -0
  225. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/contrib/emscripten/connection.py +0 -0
  226. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/contrib/emscripten/fetch.py +0 -0
  227. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/contrib/emscripten/request.py +0 -0
  228. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/contrib/emscripten/response.py +0 -0
  229. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/contrib/pyopenssl.py +0 -0
  230. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/contrib/socks.py +0 -0
  231. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/exceptions.py +0 -0
  232. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/fields.py +0 -0
  233. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/filepost.py +0 -0
  234. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/http2/__init__.py +0 -0
  235. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/http2/connection.py +0 -0
  236. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/http2/probe.py +0 -0
  237. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/poolmanager.py +0 -0
  238. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/py.typed +0 -0
  239. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/response.py +0 -0
  240. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/util/__init__.py +0 -0
  241. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/util/connection.py +0 -0
  242. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/util/proxy.py +0 -0
  243. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/util/request.py +0 -0
  244. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/util/response.py +0 -0
  245. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/util/retry.py +0 -0
  246. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/util/ssl_.py +0 -0
  247. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/util/ssl_match_hostname.py +0 -0
  248. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/util/ssltransport.py +0 -0
  249. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/util/timeout.py +0 -0
  250. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/util/url.py +0 -0
  251. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/util/util.py +0 -0
  252. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/urllib3/util/wait.py +0 -0
  253. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/requests/utils.py +0 -0
  254. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/sb/__init__.py +0 -0
  255. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/sk/__init__.py +0 -0
  256. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/sns/__init__.py +0 -0
  257. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/toexe/__init__.py +0 -0
  258. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/toexe/__main__.py +0 -0
  259. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/toexe/config.py +0 -0
  260. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/toexe/dialogs.py +0 -0
  261. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/toexe/packaging.py +0 -0
  262. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/toexe/shims.py +0 -0
  263. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/toexe/ui.py +0 -0
  264. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/toexe/utils.py +0 -0
  265. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/toexe/validation.py +0 -0
  266. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py/when.py +0 -0
  267. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py.egg-info/SOURCES.txt +0 -0
  268. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py.egg-info/dependency_links.txt +0 -0
  269. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py.egg-info/requires.txt +0 -0
  270. {kl_py-0.4.2 → kl_py-0.4.3}/src/KL_Py.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: KL_Py
3
- Version: 0.4.2
3
+ Version: 0.4.3
4
4
  Summary: A Python simplification module
5
5
  Author-email: Abbaskhurram255 <abbaskhurram255@gmail.com>
6
6
  Classifier: Programming Language :: Python :: 3
@@ -5,7 +5,7 @@ build-backend = "setuptools.build_meta"
5
5
 
6
6
  [project]
7
7
  name = "KL_Py"
8
- version = "0.4.2"
8
+ version = "0.4.3"
9
9
  authors = [
10
10
  { name = "Abbaskhurram255", email = "abbaskhurram255@gmail.com" }
11
11
  ]
@@ -4119,7 +4119,12 @@ def Int(
4119
4119
  x = str(x)\
4120
4120
  .lower()\
4121
4121
  .strip()
4122
- x = replace(
4122
+ x = replacei(
4123
+ x,
4124
+ r"(?<=\d) *[Zz] *(?=[\+\-]?\d)",
4125
+ "e"
4126
+ )
4127
+ x = replacei(
4123
4128
  x,
4124
4129
  r"[^Ee\+\-\.\d]|(?<=[A-Za-z_])[Ee]|[Ee\.](?![\d\+\-])|(?<![^\de\+\-\.])[\.\+\-](?=[^\de\+\-\.])",
4125
4130
  ""
@@ -4168,8 +4173,14 @@ def Flt(
4168
4173
  return 1.0\
4169
4174
  if x else 0.0
4170
4175
  if isinstance(x, str):
4176
+ x = x.strip()
4171
4177
  x = replacei(
4172
- x.strip(),
4178
+ x,
4179
+ r"(?<=\d) *[Zz] *(?=[\+\-]?\d)",
4180
+ "e"
4181
+ )
4182
+ x = replacei(
4183
+ x,
4173
4184
  r"[^Ee\+\-\.\d]|(?<=[A-Za-z_])[Ee]|[Ee\.](?![\d\+\-])|(?<![^\de\+\-\.])[\.\+\-](?=[^\de\+\-\.])",
4174
4185
  ""
4175
4186
  )
@@ -4284,21 +4295,59 @@ def th(n: Number) -> str:
4284
4295
  else:
4285
4296
  suffix = {1: "st", 2: "nd", 3: "rd"}.get(n % 10, "th")
4286
4297
  return str(n) + suffix
4287
- def fus(amount: Number) -> str:
4288
- if amount is None or not isinstance(amount, Number):
4289
- return ""
4290
- amount = round(amount, 1)
4291
- parts = str(amount).split('.')
4292
- integer_part = '{:,}'.format(int(parts[0]))
4293
- decimal_part = f".{parts[1]}" if len(parts) > 1 else ''
4298
+ def fus(amount: Number, precision: int = 2) -> str:
4299
+ if amount is None\
4300
+ or not isinstance(amount, Number):
4301
+ return ""
4302
+ if not (
4303
+ isinstance(
4304
+ precision,
4305
+ int
4306
+ )\
4307
+ and precision\
4308
+ >= 0
4309
+ ):
4310
+ precision = 2
4311
+ amount = round(
4312
+ amount,
4313
+ precision
4314
+ )
4315
+ parts = str(
4316
+ amount
4317
+ )\
4318
+ .split('.')
4319
+ integer_part = '{:,}'.format(
4320
+ int(parts[0])
4321
+ )
4322
+ decimal_part = f".{parts[1]}"\
4323
+ if len(parts) > 1 else ''
4294
4324
  result: str = f"{integer_part}{decimal_part}"
4295
4325
  result = re.sub(r"\.0+$", "", result)
4296
4326
  return result
4297
- def fpk(amount: Number) -> str:
4298
- if amount is None or not isinstance(amount, Number):
4299
- return ""
4300
- amount = round(amount, 1)
4301
- parts = str(amount).split('.')
4327
+ def fpk(amount: Number, precision: int = 2) -> str:
4328
+ if amount is None\
4329
+ or not isinstance(
4330
+ amount,
4331
+ Number
4332
+ ):
4333
+ return ""
4334
+ if not (
4335
+ isinstance(
4336
+ precision,
4337
+ int
4338
+ )\
4339
+ and precision\
4340
+ >= 0
4341
+ ):
4342
+ precision = 2
4343
+ amount = round(
4344
+ amount,
4345
+ precision
4346
+ )
4347
+ parts = str(
4348
+ amount
4349
+ )\
4350
+ .split('.')
4302
4351
  # Indian formatting for integer part
4303
4352
  integer_part = parts[0]
4304
4353
  if len(integer_part) > 3:
@@ -4321,13 +4370,41 @@ tin: int = 3
4321
4370
  chaar: int = 4
4322
4371
  ath: int = 8
4323
4372
  aath = ath
4324
- def number_list_validator(args: tuple[Any]):
4325
- args = list(args)
4326
- if len(args) == 1 and isinstance(args[0], (list, tuple)):
4327
- args = list(args[0])
4328
- if not all(isinstance(arg, (int, float)) for arg in args):
4329
- return []
4330
- return args
4373
+ sola: int = 16
4374
+ batees: int = 32
4375
+ battis = batis = battees = batees
4376
+ def number_list_validator(
4377
+ args: Iterable[Any]
4378
+ ) -> list:
4379
+ if not isinstance(
4380
+ args,
4381
+ Iterable
4382
+ ):
4383
+ return []
4384
+ if len(args) == 1\
4385
+ and isinstance(
4386
+ args[0],
4387
+ Iterable
4388
+ ):
4389
+ args = args[0]
4390
+ if not all(
4391
+ isinstance(
4392
+ arg,
4393
+ (
4394
+ int,
4395
+ float
4396
+ )
4397
+ )\
4398
+ for arg in args
4399
+ ):
4400
+ return []
4401
+ return args
4402
+ filter_number_list =\
4403
+ is_number_list =\
4404
+ is_numeric_list =\
4405
+ he_number_list =\
4406
+ is_all_numbers =\
4407
+ number_list_validator
4331
4408
  def mean(*args: tuple[int | float]) -> float:
4332
4409
  args = number_list_validator(args)
4333
4410
  if not args:
@@ -4359,29 +4436,81 @@ def arithrange(*args: tuple[int | float]) -> float:
4359
4436
  return 0.0
4360
4437
  return float(max(args) - min(args))
4361
4438
  math.arith_range = math.arithrange = arith_range = arithrange
4362
- def IntInput(*args, **kwargs):
4439
+ def int_input(*args, **kwargs):
4363
4440
  try:
4364
- return Int(input(*args, **kwargs))
4365
- except Exception:
4441
+ return Int(
4442
+ input(
4443
+ *args,
4444
+ **kwargs
4445
+ )
4446
+ )
4447
+ except:
4448
+ # keyboard interrupts
4366
4449
  return 0
4367
- def FltInput(*args, **kwargs):
4450
+ def flt_input(*args, **kwargs):
4368
4451
  try:
4369
- return Flt(input(*args, **kwargs))
4370
- except Exception:
4371
- return 0
4372
- intInput, fltInput = IntInput, FltInput
4373
- def flattened(lst: list[Any]) -> list[Any]:
4374
- if lst is None or not isinstance(lst, list):
4375
- return []
4376
- out: list[Any] = []
4377
- for item in lst:
4378
- if isinstance(item, Iterable) and not isinstance(item, (str, bytes)):
4379
- out.extend(flattened(item))
4380
- else:
4381
- out.append(item)
4382
- return out
4452
+ return Flt(
4453
+ input(
4454
+ *args,
4455
+ **kwargs
4456
+ )
4457
+ )
4458
+ except:
4459
+ # keyboard interrupts
4460
+ return 0.0
4461
+ integer_input, float_input = int_input, flt_input
4462
+ def flattened(lst: list[Any]) ->\
4463
+ Union[
4464
+ list,
4465
+ tuple,
4466
+ set
4467
+ ]:
4468
+ if lst is None\
4469
+ or not isinstance(
4470
+ lst,
4471
+ (
4472
+ list,
4473
+ tuple,
4474
+ set
4475
+ )
4476
+ ):
4477
+ return []
4478
+ out: list[Any] = []
4479
+ for item in lst:
4480
+ if isinstance(item, Iterable)\
4481
+ and not isinstance(
4482
+ item,
4483
+ (
4484
+ str,
4485
+ bytes
4486
+ )
4487
+ ):
4488
+ out.extend(
4489
+ flattened(
4490
+ item
4491
+ )
4492
+ )
4493
+ else:
4494
+ out.append(
4495
+ item
4496
+ )
4497
+ if isinstance(
4498
+ lst,
4499
+ tuple
4500
+ ):
4501
+ return tuple(
4502
+ out
4503
+ )
4504
+ elif isinstance(
4505
+ lst,
4506
+ set
4507
+ ):
4508
+ return set(
4509
+ out
4510
+ )
4511
+ return out
4383
4512
  flat = flatten = flattened
4384
- def clone(item: list|tuple|dict) -> list|tuple|dict:
4513
+ def clone(item: Any) -> Any:
4385
4514
  if item is None:
4386
4515
  return None
4387
4516
  return deepcopy(item)
@@ -4389,7 +4518,7 @@ def clone(item: list|tuple|dict) -> list|tuple|dict:
4389
4518
  __KL_Py.deepcopy__
4390
4519
 
4391
4520
  @param item
4392
- @@type (list, tuple, dict)
4521
+ @@type Any
4393
4522
  :: object to clone
4394
4523
  @return
4395
4524
  @@type (list, tuple, dict)
@@ -4399,12 +4528,16 @@ def clone(item: list|tuple|dict) -> list|tuple|dict:
4399
4528
  in as the argument
4400
4529
  """
4401
4530
  def lambai(x: Iterable) -> int:
4402
- if not isinstance(x, Iterable):
4531
+ if not isinstance(
4532
+ x,
4533
+ Iterable
4534
+ ):
4403
4535
  return 0
4404
4536
  return len(x)
4405
4537
  def barabar(x, y) -> haal:
4406
- if isinstance(x, str) and isinstance(y, str):
4407
- return x.lower() == y.lower()
4538
+ if isinstance(x, str)\
4539
+ and isinstance(y, str):
4540
+ return x.lower() == y.lower()
4408
4541
  return x == y
4409
4542
  def he(x: Any, y: Any = None) -> bool:
4410
4543
  """
@@ -6969,4 +7102,7 @@ if __name__ == "__main__":
6969
7102
  print(Flt(True))
6970
7103
  print(Flt("hello worl200.4e-2d"))
6971
7104
  print(Flt(" 4.3e5 t hee e "))
6972
- print(countries)
7105
+ print(countries)
7106
+ print(Int("400.5e-1"))
7107
+ print(flt_input("Enter a number:"))
7108
+
@@ -68,13 +68,67 @@ def __add_module__(module_name: str, namespace: dict) -> None:
68
68
  namespace[name] = getattr(module, name)
69
69
  is_printing: bool = False
70
70
  stable_old_print = old_print = builtins.print
71
- def cust_print(*args, **kwargs):
71
+ def cust_print(
72
+ *args,
73
+ p=None,
74
+ pr=None,
75
+ prec=None,
76
+ precision=None,
77
+ f=None,
78
+ fmt=None,
79
+ format_=None,
80
+ **kwargs
81
+ ):
72
82
  """Data ko string me badalke screen par dikhaata he."""
73
83
  global is_printing
74
84
  if is_printing:
75
85
  old_print(*args, **kwargs)
76
86
  return
77
87
  # ^ recursion safety
88
+ prec_kwa = [
89
+ x\
90
+ for x in (
91
+ p,
92
+ pr,
93
+ prec
94
+ )\
95
+ if isinstance(
96
+ x,
97
+ int
98
+ )
99
+ ]
100
+ if len(prec_kwa):
101
+ precision = prec_kwa[0]
102
+ f_kwa = [
103
+ x\
104
+ for x in (
105
+ f,
106
+ fmt
107
+ )\
108
+ if isinstance(
109
+ x,
110
+ str
111
+ )
112
+ ]
113
+ if len(
114
+ f_kwa
115
+ ):
116
+ format_ = f_kwa[0]
117
+ if not isinstance(
118
+ format_,
119
+ str
120
+ ):
121
+ format_ = ""
122
+ format_ = format_\
123
+ .strip()\
124
+ .lower()
125
+ if not format_:
126
+ format_ = "pk"
127
+ formatter = fpk
128
+ if "u" in format_:
129
+ # use
130
+ # us formatter
131
+ formatter = fus
78
132
  try:
79
133
  is_printing = True
80
134
  args = list(args)
@@ -83,20 +137,71 @@ def cust_print(*args, **kwargs):
83
137
  if arg is None:
84
138
  args[i] = "koi_na"
85
139
  elif is_int(arg):
86
- if not any(kwargs.pop(k, False) for k in ["dont_format", "regular_nums", "normal_nums", "dont_format_nums", "nahi_format_nums"]):
87
- args[i] = fpk(arg)
140
+ if not any(
141
+ kwargs.pop(
142
+ k,
143
+ False
144
+ )\
145
+ for k in [
146
+ "dont_format",
147
+ "nahi_format",
148
+ "regular_nums",
149
+ "normal_nums",
150
+ "dont_format_nums",
151
+ "nahi_format_nums"
152
+ ]
153
+ ):
154
+ args[i] = formatter(
155
+ arg,
156
+ precision=precision
157
+ )
88
158
  elif is_flt(arg):
89
- if not any(kwargs.pop(k, False) for k in ["dont_format", "regular_nums", "normal_nums", "dont_format_nums", "nahi_format_nums"]):
90
- args[i] = fpk(arg)
159
+ if not any(
160
+ kwargs.pop(
161
+ k,
162
+ False
163
+ )\
164
+ for k in [
165
+ "dont_format",
166
+ "nahi_format",
167
+ "regular_nums",
168
+ "normal_nums",
169
+ "dont_format_nums",
170
+ "nahi_format_nums"
171
+ ]
172
+ ):
173
+ args[i] = formatter(
174
+ arg,
175
+ precision=precision
176
+ )
91
177
  elif is_bool(arg):
92
- args[i] = "Han" if arg == True else "Nahi"
93
- elif isinstance(arg, (list, tuple)):
94
- args[i] = __join_into_words_version_2__(arg)
178
+ args[i] = "Han"\
179
+ if arg == True\
180
+ else "Nahi"
181
+ elif isinstance(
182
+ arg,
183
+ (
184
+ list,
185
+ tuple
186
+ )
187
+ ):
188
+ args[i] = __join_into_words_version_2__(
189
+ arg
190
+ )
95
191
  else:
96
192
  # if it's an object of any other type (list, some custom class, ...)
97
193
  # let's stringify, and post-process it, to make it look prettier
98
194
  args[i] = str(args[i])
99
- if not kwargs.pop("dont_format", False):
195
+ if not any(
196
+ kwargs.pop(
197
+ k,
198
+ False
199
+ )\
200
+ for k in [
201
+ "dont_format",
202
+ "nahi_format"
203
+ ]
204
+ ):
100
205
  args[i] = replace(args[i], r", (?=[^,\]]+\])", ", aur ")
101
206
  args[i] = replace(args[i], r"(?<=\<)class(?= [\"\'][A-Za-z_][\w\.]*[\"\']\>)", "kism:")
102
207
  args[i] = replace(args[i], r"(?<=\<)enum (?<name_of_enum>[\"\'][A-Za-z_][\w\.]*[\"\'])(?=\>)", "kism: Enum[$name_of_enum]")
@@ -113,11 +218,58 @@ def cust_print(*args, **kwargs):
113
218
  args[i] = replace(args[i], r"\bNone\b", "koi_na")
114
219
  args[i] = replace(args[i], r"\bTrue\b", "Han")
115
220
  args[i] = replace(args[i], r"\bFalse\b", "Nahi")
116
- if not any(kwargs.pop(k, False) for k in ["dont_format_nums", "nahi_format_nums", "regular_nums", "normal_nums", "dont_format_nums_in_strings", "nahi_format_nums_darmyan_strings", "nahi_format_nums_darmyan_jumle", "normal_nums_darmyan_strings", "normal_nums_darmyan_jumle", "regular_nums_darmyan_strings", "regular_nums_darmyan_jumle"]):
117
- args[i] = replace(args[i], r"(?<!\w)(?<!\+|(?<=\+)\-|(?<=n!)!|(?<=n!!)[\+\-])(?<n_to_be_formatted>\-?\d*\.?\d+(?:e[\+\-]?\d+)?)\b", lambda m: re.sub(r"\.0+$", "", str(fpk(float(m.group("n_to_be_formatted"))))))
118
- args[i] = replace(args[i], r"n!!(?=\-?\d*\.?\d+)", "")
119
- args[i] = replace(args[i], r"\.0+$", "")
120
- old_print(*args, **kwargs)
221
+ if not any(
222
+ kwargs.pop(
223
+ k,
224
+ False
225
+ )\
226
+ for k in [
227
+ "dont_format_nums",
228
+ "nahi_format_nums",
229
+ "regular_nums",
230
+ "normal_nums",
231
+ "dont_format_nums_in_strings",
232
+ "nahi_format_nums_darmyan_strings",
233
+ "nahi_format_nums_darmyan_jumle",
234
+ "normal_nums_darmyan_strings",
235
+ "normal_nums_darmyan_jumle",
236
+ "regular_nums_darmyan_strings",
237
+ "regular_nums_darmyan_jumle"
238
+ ]
239
+ ):
240
+ args[i] = replace(
241
+ args[i],
242
+ r"(?<!\w)(?<!\+|(?<=\+)\-|(?<=n!)!|(?<=n!!)[\+\-])(?<n_to_be_formatted>\-?\d*\.?\d+(?:e[\+\-]?\d+)?)\b",
243
+ lambda m:\
244
+ re.sub(
245
+ r"\.0+$",
246
+ "",
247
+ str(
248
+ formatter(
249
+ float(
250
+ m.group(
251
+ "n_to_be_formatted"
252
+ )
253
+ ),
254
+ precision=precision
255
+ )
256
+ )
257
+ )
258
+ )
259
+ args[i] = replace(
260
+ args[i],
261
+ r"n!!(?=\-?\d*\.?\d+)",
262
+ ""
263
+ )
264
+ args[i] = replace(
265
+ args[i],
266
+ r"\.0+$",
267
+ ""
268
+ )
269
+ old_print(
270
+ *args,
271
+ **kwargs
272
+ )
121
273
  finally:
122
274
  is_printing = False
123
275
  # if args is empty, prints a line break
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: KL_Py
3
- Version: 0.4.2
3
+ Version: 0.4.3
4
4
  Summary: A Python simplification module
5
5
  Author-email: Abbaskhurram255 <abbaskhurram255@gmail.com>
6
6
  Classifier: Programming Language :: Python :: 3
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes