pypipr 1.0.80__tar.gz → 1.0.82__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 (75) hide show
  1. {pypipr-1.0.80 → pypipr-1.0.82}/PKG-INFO +451 -102
  2. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/__init__.py +1 -0
  3. pypipr-1.0.82/pypipr/ibuiltins/ivars.py +43 -0
  4. {pypipr-1.0.80 → pypipr-1.0.82}/pyproject.toml +1 -1
  5. {pypipr-1.0.80 → pypipr-1.0.82}/readme.md +450 -101
  6. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/ComparePerformance.py +0 -0
  7. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/LINUX.py +0 -0
  8. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/RunParallel.py +0 -0
  9. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/WINDOWS.py +0 -0
  10. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/__init__.py +0 -0
  11. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/avg.py +0 -0
  12. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/basename.py +0 -0
  13. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/chunk_array.py +0 -0
  14. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/create_folder.py +0 -0
  15. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/datetime_from_string.py +0 -0
  16. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/datetime_now.py +0 -0
  17. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/dict_first.py +0 -0
  18. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/dirname.py +0 -0
  19. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/exit_if_empty.py +0 -0
  20. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/filter_empty.py +0 -0
  21. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/get_class_method.py +0 -0
  22. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/get_filemtime.py +0 -0
  23. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/get_filesize.py +0 -0
  24. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/get_from_index.py +0 -0
  25. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/is_empty.py +0 -0
  26. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/is_iterable.py +0 -0
  27. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/is_valid_url.py +0 -0
  28. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/password_generator.py +0 -0
  29. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/random_bool.py +0 -0
  30. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/set_timeout.py +0 -0
  31. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/sets_ordered.py +0 -0
  32. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/str_cmp.py +0 -0
  33. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ibuiltins/to_str.py +0 -0
  34. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/iconsole/__init__.py +0 -0
  35. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/iconsole/choices.py +0 -0
  36. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/iconsole/console_run.py +0 -0
  37. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/iconsole/input_char.py +0 -0
  38. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/iconsole/log.py +0 -0
  39. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/iconsole/print_colorize.py +0 -0
  40. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/iconsole/print_dir.py +0 -0
  41. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/iconsole/print_log.py +0 -0
  42. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/iconsole/print_to_last_line.py +0 -0
  43. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/iconsole/text_colorize.py +0 -0
  44. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/idjango/APIMixinView.py +0 -0
  45. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/idjango/__init__.py +0 -0
  46. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/iengineering/PintUreg.py +0 -0
  47. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/iengineering/PintUregQuantity.py +0 -0
  48. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/iengineering/__init__.py +0 -0
  49. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/iengineering/batch_calculate.py +0 -0
  50. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/iengineering/batchmaker.py +0 -0
  51. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/iengineering/calculate.py +0 -0
  52. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/iflow/auto_reload.py +0 -0
  53. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/iflow/github_pull.py +0 -0
  54. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/iflow/github_push.py +0 -0
  55. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/iflow/github_user.py +0 -0
  56. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/iflow/pip_freeze_without_version.py +0 -0
  57. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/iflow/poetry_publish.py +0 -0
  58. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/iflow/poetry_update_version.py +0 -0
  59. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ifunctions/__init__.py +0 -0
  60. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ifunctions/iargv.py +0 -0
  61. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ifunctions/idumps.py +0 -0
  62. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ifunctions/idumps_html.py +0 -0
  63. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ifunctions/ienv.py +0 -0
  64. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ifunctions/iexec.py +0 -0
  65. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ifunctions/ijoin.py +0 -0
  66. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ifunctions/iloads.py +0 -0
  67. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ifunctions/iloads_html.py +0 -0
  68. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ifunctions/iopen.py +0 -0
  69. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ifunctions/iprint.py +0 -0
  70. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ifunctions/irange.py +0 -0
  71. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ifunctions/ireplace.py +0 -0
  72. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ifunctions/iscandir.py +0 -0
  73. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/ifunctions/isplit.py +0 -0
  74. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/pypipr.py.bak +0 -0
  75. {pypipr-1.0.80 → pypipr-1.0.82}/pypipr/terminal.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pypipr
3
- Version: 1.0.80
3
+ Version: 1.0.82
4
4
  Summary: The Python Package Index Project
5
5
  Author: ufiapjj
6
6
  Author-email: ufiapjj@gmail.com
@@ -106,7 +106,7 @@ print(list(batch_calculate("{1 10} m ** {1 3}")))
106
106
 
107
107
  Output:
108
108
  ```py
109
- <generator object batch_calculate at 0x76ef846200>
109
+ <generator object batch_calculate at 0x734c9953f0>
110
110
  [('1 m ** 1', <Quantity(1, 'meter')>), ('1 m ** 2', <Quantity(1, 'meter ** 2')>), ('1 m ** 3', <Quantity(1, 'meter ** 3')>), ('2 m ** 1', <Quantity(2, 'meter')>), ('2 m ** 2', <Quantity(2, 'meter ** 2')>), ('2 m ** 3', <Quantity(2, 'meter ** 3')>), ('3 m ** 1', <Quantity(3, 'meter')>), ('3 m ** 2', <Quantity(3, 'meter ** 2')>), ('3 m ** 3', <Quantity(3, 'meter ** 3')>), ('4 m ** 1', <Quantity(4, 'meter')>), ('4 m ** 2', <Quantity(4, 'meter ** 2')>), ('4 m ** 3', <Quantity(4, 'meter ** 3')>), ('5 m ** 1', <Quantity(5, 'meter')>), ('5 m ** 2', <Quantity(5, 'meter ** 2')>), ('5 m ** 3', <Quantity(5, 'meter ** 3')>), ('6 m ** 1', <Quantity(6, 'meter')>), ('6 m ** 2', <Quantity(6, 'meter ** 2')>), ('6 m ** 3', <Quantity(6, 'meter ** 3')>), ('7 m ** 1', <Quantity(7, 'meter')>), ('7 m ** 2', <Quantity(7, 'meter ** 2')>), ('7 m ** 3', <Quantity(7, 'meter ** 3')>), ('8 m ** 1', <Quantity(8, 'meter')>), ('8 m ** 2', <Quantity(8, 'meter ** 2')>), ('8 m ** 3', <Quantity(8, 'meter ** 3')>), ('9 m ** 1', <Quantity(9, 'meter')>), ('9 m ** 2', <Quantity(9, 'meter ** 2')>), ('9 m ** 3', <Quantity(9, 'meter ** 3')>), ('10 m ** 1', <Quantity(10, 'meter')>), ('10 m ** 2', <Quantity(10, 'meter ** 2')>), ('10 m ** 3', <Quantity(10, 'meter ** 3')>)]
111
111
  ```
112
112
 
@@ -131,7 +131,7 @@ print(list(batchmaker(s)))
131
131
 
132
132
  Output:
133
133
  ```py
134
- <generator object batchmaker at 0x76ef8516c0>
134
+ <generator object batchmaker at 0x734caefe20>
135
135
  ['Urutan 1 dan 10 dan j dan Z saja.', 'Urutan 1 dan 10 dan j dan K saja.', 'Urutan 1 dan 10 dan k dan Z saja.', 'Urutan 1 dan 10 dan k dan K saja.', 'Urutan 1 dan 9 dan j dan Z saja.', 'Urutan 1 dan 9 dan j dan K saja.', 'Urutan 1 dan 9 dan k dan Z saja.', 'Urutan 1 dan 9 dan k dan K saja.', 'Urutan 4 dan 10 dan j dan Z saja.', 'Urutan 4 dan 10 dan j dan K saja.', 'Urutan 4 dan 10 dan k dan Z saja.', 'Urutan 4 dan 10 dan k dan K saja.', 'Urutan 4 dan 9 dan j dan Z saja.', 'Urutan 4 dan 9 dan j dan K saja.', 'Urutan 4 dan 9 dan k dan Z saja.', 'Urutan 4 dan 9 dan k dan K saja.']
136
136
  ```
137
137
 
@@ -208,7 +208,7 @@ print(list(chunk_array(arr, 5)))
208
208
 
209
209
  Output:
210
210
  ```py
211
- <generator object chunk_array at 0x76ef874e40>
211
+ <generator object chunk_array at 0x734ca10440>
212
212
  [[2, 3, 12, 3, 3], [42, 42, 1, 43, 2], [42, 41, 4, 24, 32], [42, 3, 12, 32, 42], [42]]
213
213
  ```
214
214
 
@@ -270,9 +270,9 @@ print(datetime_now("Etc/GMT+7"))
270
270
 
271
271
  Output:
272
272
  ```py
273
- 2024-04-23 05:00:14.636387+07:00
274
- 2024-04-22 22:00:14.636697+00:00
275
- 2024-04-22 15:00:14.637248-07:00
273
+ 2024-04-23 12:37:34.037749+07:00
274
+ 2024-04-23 05:37:34.038666+00:00
275
+ 2024-04-22 22:37:34.040126-07:00
276
276
  ```
277
277
 
278
278
  ## dict_first
@@ -339,7 +339,7 @@ print(filter_empty(var))
339
339
 
340
340
  Output:
341
341
  ```py
342
- <generator object filter_empty at 0x76ef8463e0>
342
+ <generator object filter_empty at 0x734c9953f0>
343
343
  ```
344
344
 
345
345
  ## get_class_method
@@ -368,8 +368,8 @@ print(list(get_class_method(ExampleGetClassMethod)))
368
368
 
369
369
  Output:
370
370
  ```py
371
- <generator object get_class_method at 0x76ef8465c0>
372
- [<function ExampleGetClassMethod.a at 0x76ef886c00>, <function ExampleGetClassMethod.b at 0x76ef886b60>, <function ExampleGetClassMethod.c at 0x76ef886ca0>, <function ExampleGetClassMethod.d at 0x76ef886f20>]
371
+ <generator object get_class_method at 0x734c997100>
372
+ [<function ExampleGetClassMethod.a at 0x734ca2cfe0>, <function ExampleGetClassMethod.b at 0x734ca2d260>, <function ExampleGetClassMethod.c at 0x734ca2d1c0>, <function ExampleGetClassMethod.d at 0x734ca2d120>]
373
373
  ```
374
374
 
375
375
  ## get_filemtime
@@ -747,94 +747,118 @@ Output:
747
747
  ```py
748
748
  (['Home', 'Emas 1 Gram', 'History', 'Trend', 'Perak 1 Gram', 'Pluang'],
749
749
  [['Harga Emas Hari Ini - Selasa, 23 April 2024'],
750
- ['Spot Emas USD↓2.325,78 (-4,35) / oz',
751
- 'Kurs IDR16.280,00 / USD',
752
- 'Emas IDR↓1.217.346 (-2.277) / gr'],
753
- ['LM Antam (Jual)↓1.343.000 (-4.000) / gr',
754
- 'LM Antam (Beli)↓1.238.000 (-4.000) / gr']],
750
+ ['Spot Emas USD↓2.310,92 (-19,21) / oz',
751
+ 'Kurs IDR↓16.224,00 (-56,00) / USD',
752
+ 'Emas IDR↓1.205.408 (-14.215) / gr'],
753
+ ['LM Antam (Jual)↓1.325.000 (-18.000) / gr',
754
+ 'LM Antam (Beli)↓1.223.000 (-15.000) / gr']],
755
755
  [['Harga Emas Hari Ini'],
756
756
  ['Gram', 'Gedung Antam Jakarta', 'Pegadaian'],
757
757
  ['per Gram (Rp)', 'per Batangan (Rp)', 'per Gram (Rp)', 'per Batangan (Rp)'],
758
758
  ['1000',
759
- '1.284 (-4)',
760
- '1.283.600 (-4.000)',
759
+ '1.266 (-18)',
760
+ '1.265.600 (-18.000)',
761
761
  '1.043.040 (+8.200)',
762
762
  '1.043.040.000 (+8.200.000)'],
763
763
  ['500',
764
- '2.567 (-8)',
765
- '1.283.640 (-4.000)',
764
+ '2.531 (-36)',
765
+ '1.265.640 (-18.000)',
766
766
  '1.043.082 (+8.200)',
767
767
  '521.541.000 (+4.100.000)'],
768
768
  ['250',
769
- '5.136 (-16)',
770
- '1.284.060 (-4.000)',
769
+ '5.064 (-72)',
770
+ '1.266.060 (-18.000)',
771
771
  '1.043.512 (+8.200)',
772
772
  '260.878.000 (+2.050.000)'],
773
773
  ['100',
774
- '12.851 (-40)',
775
- '1.285.120 (-4.000)',
774
+ '12.671 (-180)',
775
+ '1.267.120 (-18.000)',
776
776
  '1.044.600 (+8.200)',
777
777
  '104.460.000 (+820.000)'],
778
778
  ['50',
779
- '25.718 (-80)',
780
- '1.285.900 (-4.000)',
779
+ '25.358 (-360)',
780
+ '1.267.900 (-18.000)',
781
781
  '1.045.400 (+8.200)',
782
782
  '52.270.000 (+410.000)'],
783
783
  ['25',
784
- '51.499 (-160)',
785
- '1.287.480 (-4.000)',
784
+ '50.779 (-720)',
785
+ '1.269.480 (-18.000)',
786
786
  '1.047.040 (+8.200)',
787
787
  '26.176.000 (+205.000)'],
788
788
  ['10',
789
- '129.250 (-400)',
790
- '1.292.500 (-4.000)',
789
+ '127.450 (-1.800)',
790
+ '1.274.500 (-18.000)',
791
791
  '1.052.200 (+8.200)',
792
792
  '10.522.000 (+82.000)'],
793
793
  ['5',
794
- '259.600 (-800)',
795
- '1.298.000 (-4.000)',
794
+ '256.000 (-3.600)',
795
+ '1.280.000 (-18.000)',
796
796
  '1.057.800 (+8.200)',
797
797
  '5.289.000 (+41.000)'],
798
798
  ['3',
799
- '434.889 (-1.333)',
800
- '1.304.667 (-4.000)',
799
+ '428.889 (-6.000)',
800
+ '1.286.667 (-18.000)',
801
801
  '1.064.667 (+8.000)',
802
802
  '3.194.000 (+24.000)'],
803
803
  ['2',
804
- '656.500 (-2.000)',
805
- '1.313.000 (-4.000)',
804
+ '647.500 (-9.000)',
805
+ '1.295.000 (-18.000)',
806
806
  '1.073.500 (+8.500)',
807
807
  '2.147.000 (+17.000)'],
808
808
  ['1',
809
- '1.343.000 (-4.000)',
810
- '1.343.000 (-4.000)',
809
+ '1.325.000 (-18.000)',
810
+ '1.325.000 (-18.000)',
811
811
  '1.104.000 (+8.000)',
812
812
  '1.104.000 (+8.000)'],
813
813
  ['0.5',
814
- '2.886.000 (-8.000)',
815
- '1.443.000 (-4.000)',
814
+ '2.850.000 (-36.000)',
815
+ '1.425.000 (-18.000)',
816
816
  '1.208.000 (+8.000)',
817
817
  '604.000 (+4.000)'],
818
- ['Update harga LM Antam :22 April 2024, pukul 08:09Harga pembelian kembali '
819
- ':Rp. 1.238.000/gram (-4.000)',
818
+ ['Update harga LM Antam :23 April 2024, pukul 07:56Harga pembelian kembali '
819
+ ':Rp. 1.223.000/gram (-15.000)',
820
820
  'Update harga LM Pegadaian :31 Agustus 2023']],
821
821
  [['Spot Harga Emas Hari Ini (Market Open)'],
822
822
  ['Satuan', 'USD', 'Kurs\xa0Dollar', 'IDR'],
823
- ['Ounce\xa0(oz)', '2.325,78 (-4,35)', '16.280,00', '37.863.698'],
824
- ['Gram\xa0(gr)', '74,78', '16.280,00', '1.217.346 (-2.277)'],
825
- ['Kilogram\xa0(kg)', '74.775,56', '16.280,00', '1.217.346.173'],
826
- ['Update harga emas :23 April 2024, pukul 05:00Update kurs :22 April 2024, '
827
- 'pukul 13:10']],
823
+ ['Ounce\xa0(oz)', '2.310,92 (-19,21)', '16.224,00 (-56,00)', '37.492.366'],
824
+ ['Gram\xa0(gr)', '74,30', '16.224,00', '1.205.408 (-14.215)'],
825
+ ['Kilogram\xa0(kg)', '74.297,80', '16.224,00', '1.205.407.561'],
826
+ ['Update harga emas :23 April 2024, pukul 12:37Update kurs :23 April 2024, '
827
+ 'pukul 09:10']],
828
828
  [['Gram', 'UBS Gold 99.99%'],
829
829
  ['Jual', 'Beli'],
830
830
  ['/ Batang', '/ Gram', '/ Batang', '/ Gram'],
831
- ['100', '128.200.000', '1.282.000', '127.085.000', '1.270.850'],
832
- ['50', '64.250.000', '1.285.000', '63.595.000', '1.271.900'],
833
- ['25', '32.150.000', '1.286.000', '31.900.000', '1.276.000'],
834
- ['10', '12.910.000', '1.291.000', '12.810.000', '1.281.000'],
835
- ['5', '6.480.000', '1.296.000', '6.457.000', '1.291.400'],
836
- ['1', '1.340.000', '1.340.000', '1.324.000', '1.324.000'],
837
- ['', 'Update :22 April 2024, pukul 11:58']],
831
+ ['100',
832
+ '126.712.000 (-1.488.000)',
833
+ '1.267.120 (-14.880)',
834
+ '123.685.000 (-3.400.000)',
835
+ '1.236.850 (-34.000)'],
836
+ ['50',
837
+ '63.395.000 (-855.000)',
838
+ '1.267.900 (-17.100)',
839
+ '61.895.000 (-1.700.000)',
840
+ '1.237.900 (-34.000)'],
841
+ ['25',
842
+ '31.737.000 (-413.000)',
843
+ '1.269.480 (-16.520)',
844
+ '31.050.000 (-850.000)',
845
+ '1.242.000 (-34.000)'],
846
+ ['10',
847
+ '12.745.000 (-165.000)',
848
+ '1.274.500 (-16.500)',
849
+ '12.470.000 (-340.000)',
850
+ '1.247.000 (-34.000)'],
851
+ ['5',
852
+ '6.400.000 (-80.000)',
853
+ '1.280.000 (-16.000)',
854
+ '6.287.000 (-170.000)',
855
+ '1.257.400 (-34.000)'],
856
+ ['1',
857
+ '1.325.000 (-15.000)',
858
+ '1.325.000 (-15.000)',
859
+ '1.290.000 (-34.000)',
860
+ '1.290.000 (-34.000)'],
861
+ ['', 'Update :23 April 2024, pukul 11:31']],
838
862
  [['Konversi Satuan'],
839
863
  ['Satuan', 'Ounce (oz)', 'Gram (gr)', 'Kilogram (kg)'],
840
864
  ['Ounce\xa0(oz)', '1', '31,1034767696', '0,0311034768'],
@@ -844,37 +868,37 @@ Output:
844
868
  ['Waktu', 'Emas'],
845
869
  ['Unit', 'USD', 'IDR'],
846
870
  ['Angka', '+/-', 'Angka', '+/-'],
847
- ['Hari Ini', 'Kurs', '', '', '16.280', '%'],
848
- ['oz', '2.330,13', '-4,35-0,19%', '37.934.516', '-70.818-0,19%'],
849
- ['gr', '74,92', '-0,14-0,19%', '1.219.623', '-2.277-0,19%'],
850
- ['30 Hari', 'Kurs', '', '', '15.662', '+618+3,95%'],
851
- ['oz', '2.165,64', '+160,14+7,39%', '33.918.254', '+3.945.445+11,63%'],
852
- ['gr', '69,63', '+5,15+7,39%', '1.090.497', '+126.849+11,63%'],
853
- ['2 Bulan', 'Kurs', '', '', '15.630', '+650+4,16%'],
854
- ['oz', '2.038,19', '+287,59+14,11%', '31.856.910', '+6.006.789+18,86%'],
855
- ['gr', '65,53', '+9,25+14,11', '1.024.223', '+193.123+18,86%'],
856
- ['6 Bulan', 'Kurs', '', '', '15.871', '+409+2,58%'],
857
- ['oz', '1.984,00', '+341,78+17,23%', '31.488.064', '+6.375.634+20,25%'],
858
- ['gr', '63,79', '+10,99+17,23%', '1.012.365', '+204.981+20,25%'],
859
- ['1 Tahun', 'Kurs', '', '', '15.731', '+549+3,49%'],
860
- ['oz', '1.823,86', '+501,92+27,52%', '28.691.142', '+9.172.557+31,97%'],
861
- ['gr', '58,64', '+16,14+27,52%', '922.442', '+294.905+31,97%'],
862
- ['2 Tahun', 'Kurs', '', '', '14.348', '+1.932+13,47%'],
863
- ['oz', '1.931,96', '+393,82+20,38%', '27.719.762', '+10.143.936+36,59%'],
864
- ['gr', '62,11', '+12,66+20,38%', '891.211', '+326.135+36,59%'],
865
- ['3 Tahun', 'Kurs', '', '', '14.530', '+1.750+12,04%'],
866
- ['oz', '1.777,11', '+548,67+30,87%', '25.821.408', '+12.042.290+46,64%'],
867
- ['gr', '57,14', '+17,64+30,87%', '830.178', '+387.169+46,64%'],
868
- ['5 Tahun', 'Kurs', '', '', '14.154', '+2.126+15,02%'],
869
- ['oz', '1.277,64', '+1.048,14+82,04%', '18.083.717', '+19.779.982+109,38%'],
870
- ['gr', '41,08', '+33,70+82,04%', '581.405', '+635.941+109,38%']])
871
+ ['Hari Ini', 'Kurs', '', '', '16.280', '-56-0,34%'],
872
+ ['oz', '2.330,13', '-19,21-0,82%', '37.934.516', '-442.150-1,17%'],
873
+ ['gr', '74,92', '-0,62-0,82%', '1.219.623', '-14.215-1,17%'],
874
+ ['30 Hari', 'Kurs', '', '', '15.662', '+562+3,59%'],
875
+ ['oz', '2.165,64', '+145,28+6,71%', '33.918.254', '+3.574.112+10,54%'],
876
+ ['gr', '69,63', '+4,67+6,71%', '1.090.497', '+114.910+10,54%'],
877
+ ['2 Bulan', 'Kurs', '', '', '15.630', '+594+3,80%'],
878
+ ['oz', '2.038,19', '+272,73+13,38%', '31.856.910', '+5.635.456+17,69%'],
879
+ ['gr', '65,53', '+8,77+13,38', '1.024.223', '+181.184+17,69%'],
880
+ ['6 Bulan', 'Kurs', '', '', '15.871', '+353+2,22%'],
881
+ ['oz', '1.984,00', '+326,92+16,48%', '31.488.064', '+6.004.302+19,07%'],
882
+ ['gr', '63,79', '+10,51+16,48%', '1.012.365', '+193.043+19,07%'],
883
+ ['1 Tahun', 'Kurs', '', '', '15.731', '+493+3,13%'],
884
+ ['oz', '1.823,86', '+487,06+26,70%', '28.691.142', '+8.801.224+30,68%'],
885
+ ['gr', '58,64', '+15,66+26,70%', '922.442', '+282.966+30,68%'],
886
+ ['2 Tahun', 'Kurs', '', '', '14.348', '+1.876+13,07%'],
887
+ ['oz', '1.931,96', '+378,96+19,62%', '27.719.762', '+9.772.604+35,26%'],
888
+ ['gr', '62,11', '+12,18+19,62%', '891.211', '+314.197+35,26%'],
889
+ ['3 Tahun', 'Kurs', '', '', '14.530', '+1.694+11,66%'],
890
+ ['oz', '1.777,11', '+533,81+30,04%', '25.821.408', '+11.670.958+45,20%'],
891
+ ['gr', '57,14', '+17,16+30,04%', '830.178', '+375.230+45,20%'],
892
+ ['5 Tahun', 'Kurs', '', '', '14.154', '+2.070+14,62%'],
893
+ ['oz', '1.277,64', '+1.033,28+80,87%', '18.083.717', '+19.408.650+107,33%'],
894
+ ['gr', '41,08', '+33,22+80,87%', '581.405', '+624.003+107,33%']])
871
895
  (['Home', 'Emas 1 Gram', 'History', 'Trend', 'Perak 1 Gram', 'Pluang'],
872
896
  [[''],
873
897
  ['Emas 24 KaratHarga Emas 1 Gram', ''],
874
- ['USD', '74,78↓', '-0,14-0,19%'],
875
- ['KURS', '16.238,15↓', '-8,20-0,05%'],
876
- ['IDR', '1.214.216,82↓', '-2.885,30-0,24%'],
877
- ['Selasa, 23 April 2024 05:00']],
898
+ ['USD', '74,30↓', '-0,62-0,83%'],
899
+ ['KURS', '16.234,50↓', '-11,85-0,07%'],
900
+ ['IDR', '1.206.187,69↓', '-10.914,43-0,90%'],
901
+ ['Selasa, 23 April 2024 12:37']],
878
902
  [[''],
879
903
  ['Emas 1 Gram (IDR)Emas 1 Gram (USD)Kurs USD-IDR',
880
904
  'Hari Ini',
@@ -885,19 +909,19 @@ Output:
885
909
  '']],
886
910
  [['Pergerakkan Harga Emas 1 Gram'],
887
911
  ['', 'Penutupan Kemarin', 'Pergerakkan Hari Ini', 'Rata-rata'],
888
- ['USD', '74,92', '74,78 - 74,92', '74,85'],
889
- ['KURS', '16.246,35', '16.238,15 - 16.246,35', '16.242,25'],
890
- ['IDR', '1.217.102,12', '1.214.216,82 - 1.217.102,12', '1.215.659,47'],
912
+ ['USD', '74,92', '74,30 - 74,92', '74,61'],
913
+ ['KURS', '16.246,35', '16.234,50 - 16.246,35', '16.240,43'],
914
+ ['IDR', '1.217.102,12', '1.206.187,69 - 1.217.102,12', '1.211.644,91'],
891
915
  [''],
892
916
  ['', 'Awal Tahun', 'Pergerakkan YTD', '+/- YTD'],
893
- ['USD', '66,32', '64,07 - 77,14', '+8,46 (12,76%)'],
894
- ['KURS', '15.390,10', '15.390,00 - 16.307,80', '+848,05 (5,51%)'],
895
- ['IDR', '1.020.729,53', '997.660,12 - 1.256.829,06', '+193.487,29 (18,96%)'],
917
+ ['USD', '66,32', '64,07 - 77,14', '+7,98 (12,03%)'],
918
+ ['KURS', '15.390,10', '15.390,00 - 16.307,80', '+844,40 (5,49%)'],
919
+ ['IDR', '1.020.729,53', '997.660,12 - 1.256.829,06', '+185.458,16 (18,17%)'],
896
920
  [''],
897
921
  ['', 'Tahun Lalu / 52 Minggu', 'Pergerakkan 52 Minggu', '+/- 52 Minggu'],
898
- ['USD', '63,76', '58,43 - 77,14', '+11,02 (17,28%)'],
899
- ['KURS', '14.936,00', '14.669,40 - 16.307,80', '+1.302,15 (8,72%)'],
900
- ['IDR', '952.339,68', '912.925,68 - 1.256.829,06', '+261.877,14 (27,50%)']])
922
+ ['USD', '63,76', '58,43 - 77,14', '+10,54 (16,53%)'],
923
+ ['KURS', '14.936,00', '14.669,40 - 16.307,80', '+1.298,50 (8,69%)'],
924
+ ['IDR', '952.339,68', '912.925,68 - 1.256.829,06', '+253.848,01 (26,66%)']])
901
925
  ```
902
926
 
903
927
  ## input_char
@@ -951,7 +975,7 @@ Output:
951
975
  ```py
952
976
  8
953
977
  ['mana', 'aja']
954
- [<Element a at 0x76f9498d20>, <Element a at 0x76ef6ba620>, <Element a at 0x76ef701090>, <Element a at 0x76ef701130>, <Element a at 0x76ef701180>, <Element a at 0x76ef7011d0>, <Element a at 0x76ef701220>, <Element a at 0x76ef701270>, <Element a at 0x76ef7012c0>, <Element a at 0x76ef701310>, <Element a at 0x76ef701360>, <Element a at 0x76ef7013b0>, <Element a at 0x76ef701400>, <Element a at 0x76ef701450>, <Element a at 0x76ef7014a0>, <Element a at 0x76ef7014f0>, <Element a at 0x76ef701540>, <Element a at 0x76ef701590>]
978
+ [<Element a at 0x735b3c6440>, <Element a at 0x734ca69b30>, <Element a at 0x734ca69bd0>, <Element a at 0x734ca69c20>, <Element a at 0x734ca69c70>, <Element a at 0x734ca69cc0>, <Element a at 0x734ca69d10>, <Element a at 0x734ca69d60>, <Element a at 0x734ca69db0>, <Element a at 0x734ca69e00>, <Element a at 0x734ca69e50>, <Element a at 0x734ca69ea0>, <Element a at 0x734ca69ef0>, <Element a at 0x734ca69f40>, <Element a at 0x734ca69f90>, <Element a at 0x734ca69fe0>, <Element a at 0x734ca6a030>, <Element a at 0x734ca6a080>]
955
979
  False
956
980
  ```
957
981
 
@@ -992,8 +1016,8 @@ print(list(irange(10, 5)))
992
1016
 
993
1017
  Output:
994
1018
  ```py
995
- <generator object irange at 0x76ef833bc0>
996
- <generator object irange at 0x76ef833bc0>
1019
+ <generator object irange at 0x734c9ee8a0>
1020
+ <generator object irange at 0x734c9ee8a0>
997
1021
  ['a', 'k', 'u']
998
1022
  [1, 2, 3, 4, 5, 6, 7]
999
1023
  [10, 9, 8, 7, 6, 5]
@@ -1110,7 +1134,7 @@ print(list(iscandir("./", recursive=False, scan_file=False)))
1110
1134
 
1111
1135
  Output:
1112
1136
  ```py
1113
- <generator object iscandir at 0x76ef875640>
1137
+ <generator object iscandir at 0x734ca10840>
1114
1138
  [PosixPath('.git'), PosixPath('.vscode'), PosixPath('pypipr'), PosixPath('__pycache__'), PosixPath('dist')]
1115
1139
  ```
1116
1140
 
@@ -1130,6 +1154,318 @@ Output:
1130
1154
  ['', 'ini', 'contoh', 'path', '']
1131
1155
  ```
1132
1156
 
1157
+ ## ivars
1158
+
1159
+ `ivars(obj)`
1160
+
1161
+ Membuat dictionary berdasarkan kategori untuk setiap
1162
+ member dari object.
1163
+
1164
+ ```python
1165
+ iprint(ivars(__import__('pypipr')))
1166
+ ```
1167
+
1168
+ Output:
1169
+ ```py
1170
+ {'module': {'ibuiltins': <module 'pypipr.ibuiltins' from '/data/data/com.termux/files/home/pypipr/pypipr/ibuiltins/__init__.py'>,
1171
+ 'iconsole': <module 'pypipr.iconsole' from '/data/data/com.termux/files/home/pypipr/pypipr/iconsole/__init__.py'>,
1172
+ 'idjango': <module 'pypipr.idjango' from '/data/data/com.termux/files/home/pypipr/pypipr/idjango/__init__.py'>,
1173
+ 'iengineering': <module 'pypipr.iengineering' from '/data/data/com.termux/files/home/pypipr/pypipr/iengineering/__init__.py'>,
1174
+ 'ifunctions': <module 'pypipr.ifunctions' from '/data/data/com.termux/files/home/pypipr/pypipr/ifunctions/__init__.py'>,
1175
+ 'iflow': <module 'pypipr.iflow' (<_frozen_importlib_external.NamespaceLoader object at 0x7351905950>)>,
1176
+ 'colorama': <module 'colorama' from '/data/data/com.termux/files/usr/lib/python3.11/site-packages/colorama/__init__.py'>,
1177
+ 'datetime': <module 'datetime' from '/data/data/com.termux/files/usr/lib/python3.11/datetime.py'>,
1178
+ 'functools': <module 'functools' from '/data/data/com.termux/files/usr/lib/python3.11/functools.py'>,
1179
+ 'inspect': <module 'inspect' from '/data/data/com.termux/files/usr/lib/python3.11/inspect.py'>,
1180
+ 'io': <module 'io' (frozen)>,
1181
+ 'json': <module 'json' from '/data/data/com.termux/files/usr/lib/python3.11/json/__init__.py'>,
1182
+ 'lxml': <module 'lxml' from '/data/data/com.termux/files/usr/lib/python3.11/site-packages/lxml/__init__.py'>,
1183
+ 'math': <module 'math' from '/data/data/com.termux/files/usr/lib/python3.11/lib-dynload/math.cpython-311.so'>,
1184
+ 'operator': <module 'operator' from '/data/data/com.termux/files/usr/lib/python3.11/operator.py'>,
1185
+ 'os': <module 'os' (frozen)>,
1186
+ 'pathlib': <module 'pathlib' from '/data/data/com.termux/files/usr/lib/python3.11/pathlib.py'>,
1187
+ 'pint': <module 'pint' from '/data/data/com.termux/files/usr/lib/python3.11/site-packages/pint/__init__.py'>,
1188
+ 'pprint': <module 'pprint' from '/data/data/com.termux/files/usr/lib/python3.11/pprint.py'>,
1189
+ 'queue': <module 'queue' from '/data/data/com.termux/files/usr/lib/python3.11/queue.py'>,
1190
+ 'random': <module 'random' from '/data/data/com.termux/files/usr/lib/python3.11/random.py'>,
1191
+ 're': <module 're' from '/data/data/com.termux/files/usr/lib/python3.11/re/__init__.py'>,
1192
+ 'requests': <module 'requests' from '/data/data/com.termux/files/usr/lib/python3.11/site-packages/requests/__init__.py'>,
1193
+ 'string': <module 'string' from '/data/data/com.termux/files/usr/lib/python3.11/string.py'>,
1194
+ 'subprocess': <module 'subprocess' from '/data/data/com.termux/files/usr/lib/python3.11/subprocess.py'>,
1195
+ 'sys': <module 'sys' (built-in)>,
1196
+ 'textwrap': <module 'textwrap' from '/data/data/com.termux/files/usr/lib/python3.11/textwrap.py'>,
1197
+ 'time': <module 'time' (built-in)>,
1198
+ 'tzdata': <module 'tzdata' from '/data/data/com.termux/files/usr/lib/python3.11/site-packages/tzdata/__init__.py'>,
1199
+ 'uuid': <module 'uuid' from '/data/data/com.termux/files/usr/lib/python3.11/uuid.py'>,
1200
+ 'webbrowser': <module 'webbrowser' from '/data/data/com.termux/files/usr/lib/python3.11/webbrowser.py'>,
1201
+ 'yaml': <module 'yaml' from '/data/data/com.termux/files/usr/lib/python3.11/site-packages/yaml/__init__.py'>,
1202
+ 'zoneinfo': <module 'zoneinfo' from '/data/data/com.termux/files/usr/lib/python3.11/zoneinfo/__init__.py'>},
1203
+ 'class': {'ComparePerformance': <class 'pypipr.ibuiltins.ComparePerformance.ComparePerformance'>,
1204
+ 'RunParallel': <class 'pypipr.ibuiltins.RunParallel.RunParallel'>,
1205
+ 'APIMixinView': <class 'pypipr.idjango.APIMixinView.APIMixinView'>,
1206
+ 'PintUregQuantity': <class 'pint.Quantity'>},
1207
+ 'function': {'avg': <function avg at 0x735b3bad40>,
1208
+ 'basename': <function basename at 0x735b386a20>,
1209
+ 'chunk_array': <function chunk_array at 0x7357fd0ae0>,
1210
+ 'create_folder': <function create_folder at 0x7357fd0cc0>,
1211
+ 'datetime_from_string': <function datetime_from_string at 0x7357fd0ea0>,
1212
+ 'datetime_now': <function datetime_now at 0x7358053ba0>,
1213
+ 'dict_first': <function dict_first at 0x7358053b00>,
1214
+ 'dirname': <function dirname at 0x7358053a60>,
1215
+ 'exit_if_empty': <function exit_if_empty at 0x7358053920>,
1216
+ 'filter_empty': <function filter_empty at 0x73580767a0>,
1217
+ 'get_class_method': <function get_class_method at 0x7358075b20>,
1218
+ 'get_filemtime': <function get_filemtime at 0x73580759e0>,
1219
+ 'get_filesize': <function get_filesize at 0x7358075800>,
1220
+ 'get_from_index': <function get_from_index at 0x7358075620>,
1221
+ 'is_empty': <function is_empty at 0x73580768e0>,
1222
+ 'is_iterable': <function is_iterable at 0x7358075c60>,
1223
+ 'is_valid_url': <function is_valid_url at 0x73580756c0>,
1224
+ 'ivars': <function ivars at 0x73580753a0>,
1225
+ 'password_generator': <function password_generator at 0x7358075300>,
1226
+ 'random_bool': <function random_bool at 0x7358074f40>,
1227
+ 'set_timeout': <function set_timeout at 0x73580772e0>,
1228
+ 'sets_ordered': <function sets_ordered at 0x7358077420>,
1229
+ 'str_cmp': <function str_cmp at 0x73580774c0>,
1230
+ 'to_str': <function to_str at 0x7358075bc0>,
1231
+ 'choices': <function choices at 0x7358077560>,
1232
+ 'console_run': <function console_run at 0x73580777e0>,
1233
+ 'input_char': <function input_char at 0x7358077920>,
1234
+ 'log': <function log at 0x7358077b00>,
1235
+ 'print_colorize': <function print_colorize at 0x7358077ba0>,
1236
+ 'print_dir': <function print_dir at 0x7358077ce0>,
1237
+ 'print_log': <function print_log at 0x73580779c0>,
1238
+ 'print_to_last_line': <function print_to_last_line at 0x7358077740>,
1239
+ 'text_colorize': <function text_colorize at 0x7358077880>,
1240
+ 'batch_calculate': <function batch_calculate at 0x7350f41080>,
1241
+ 'batchmaker': <function batchmaker at 0x7350f22480>,
1242
+ 'calculate': <function calculate at 0x7350f41da0>,
1243
+ 'auto_reload': <function auto_reload at 0x7350f41f80>,
1244
+ 'github_pull': <function github_pull at 0x7350f41b20>,
1245
+ 'github_push': <function github_push at 0x7350f42200>,
1246
+ 'github_user': <function github_user at 0x7350f42520>,
1247
+ 'pip_freeze_without_version': <function pip_freeze_without_version at 0x7350c79a80>,
1248
+ 'poetry_publish': <function poetry_publish at 0x7350c79c60>,
1249
+ 'poetry_update_version': <function poetry_update_version at 0x7350c9e480>,
1250
+ 'iargv': <function iargv at 0x734cbffba0>,
1251
+ 'idumps': <function idumps at 0x734cc00360>,
1252
+ 'idumps_html': <function idumps_html at 0x734cc64720>,
1253
+ 'ienv': <function ienv at 0x734cbffe20>,
1254
+ 'iexec': <function iexec at 0x734cc649a0>,
1255
+ 'ijoin': <function ijoin at 0x7350c799e0>,
1256
+ 'iloads': <function iloads at 0x734cc64a40>,
1257
+ 'iloads_html': <function iloads_html at 0x734cc64cc0>,
1258
+ 'iopen': <function iopen at 0x7350c79d00>,
1259
+ 'iprint': <function iprint at 0x734cbffc40>,
1260
+ 'irange': <function irange at 0x7350f41ee0>,
1261
+ 'ireplace': <function ireplace at 0x734cc64b80>,
1262
+ 'iscandir': <function iscandir at 0x734cc66980>,
1263
+ 'isplit': <function isplit at 0x734cc66a20>},
1264
+ 'property': {},
1265
+ 'variable': {'LINUX': True,
1266
+ 'WINDOWS': False,
1267
+ 'PintUreg': <pint.registry.UnitRegistry object at 0x7351ac0750>},
1268
+ 'method': {},
1269
+ '__module__': {},
1270
+ '__class__': {},
1271
+ '__function__': {},
1272
+ '__property__': {},
1273
+ '__variable__': {'__name__': 'pypipr',
1274
+ '__doc__': None,
1275
+ '__package__': 'pypipr',
1276
+ '__loader__': <_frozen_importlib_external.SourceFileLoader object at 0x735b388950>,
1277
+ '__spec__': ModuleSpec(name='pypipr', loader=<_frozen_importlib_external.SourceFileLoader object at 0x735b388950>, origin='/data/data/com.termux/files/home/pypipr/pypipr/__init__.py', submodule_search_locations=['/data/data/com.termux/files/home/pypipr/pypipr']),
1278
+ '__path__': ['/data/data/com.termux/files/home/pypipr/pypipr'],
1279
+ '__file__': '/data/data/com.termux/files/home/pypipr/pypipr/__init__.py',
1280
+ '__cached__': '/data/data/com.termux/files/home/pypipr/pypipr/__pycache__/__init__.cpython-311.pyc',
1281
+ '__builtins__': {'__name__': 'builtins',
1282
+ '__doc__': 'Built-in functions, types, '
1283
+ 'exceptions, and other objects.\n'
1284
+ '\n'
1285
+ 'This module provides direct '
1286
+ "access to all 'built-in'\n"
1287
+ 'identifiers of Python; for '
1288
+ 'example, builtins.len is\n'
1289
+ 'the full name for the built-in '
1290
+ 'function len().\n'
1291
+ '\n'
1292
+ 'This module is not normally '
1293
+ 'accessed explicitly by most\n'
1294
+ 'applications, but can be useful '
1295
+ 'in modules that provide\n'
1296
+ 'objects with the same name as a '
1297
+ 'built-in value, but in\n'
1298
+ 'which the built-in of that name '
1299
+ 'is also needed.',
1300
+ '__package__': '',
1301
+ '__loader__': <class '_frozen_importlib.BuiltinImporter'>,
1302
+ '__spec__': ModuleSpec(name='builtins', loader=<class '_frozen_importlib.BuiltinImporter'>, origin='built-in'),
1303
+ '__build_class__': <built-in function __build_class__>,
1304
+ '__import__': <built-in function __import__>,
1305
+ 'abs': <built-in function abs>,
1306
+ 'all': <built-in function all>,
1307
+ 'any': <built-in function any>,
1308
+ 'ascii': <built-in function ascii>,
1309
+ 'bin': <built-in function bin>,
1310
+ 'breakpoint': <built-in function breakpoint>,
1311
+ 'callable': <built-in function callable>,
1312
+ 'chr': <built-in function chr>,
1313
+ 'compile': <built-in function compile>,
1314
+ 'delattr': <built-in function delattr>,
1315
+ 'dir': <built-in function dir>,
1316
+ 'divmod': <built-in function divmod>,
1317
+ 'eval': <built-in function eval>,
1318
+ 'exec': <built-in function exec>,
1319
+ 'format': <built-in function format>,
1320
+ 'getattr': <built-in function getattr>,
1321
+ 'globals': <built-in function globals>,
1322
+ 'hasattr': <built-in function hasattr>,
1323
+ 'hash': <built-in function hash>,
1324
+ 'hex': <built-in function hex>,
1325
+ 'id': <built-in function id>,
1326
+ 'input': <built-in function input>,
1327
+ 'isinstance': <built-in function isinstance>,
1328
+ 'issubclass': <built-in function issubclass>,
1329
+ 'iter': <built-in function iter>,
1330
+ 'aiter': <built-in function aiter>,
1331
+ 'len': <built-in function len>,
1332
+ 'locals': <built-in function locals>,
1333
+ 'max': <built-in function max>,
1334
+ 'min': <built-in function min>,
1335
+ 'next': <built-in function next>,
1336
+ 'anext': <built-in function anext>,
1337
+ 'oct': <built-in function oct>,
1338
+ 'ord': <built-in function ord>,
1339
+ 'pow': <built-in function pow>,
1340
+ 'print': <built-in function print>,
1341
+ 'repr': <built-in function repr>,
1342
+ 'round': <built-in function round>,
1343
+ 'setattr': <built-in function setattr>,
1344
+ 'sorted': <built-in function sorted>,
1345
+ 'sum': <built-in function sum>,
1346
+ 'vars': <built-in function vars>,
1347
+ 'None': None,
1348
+ 'Ellipsis': Ellipsis,
1349
+ 'NotImplemented': NotImplemented,
1350
+ 'False': False,
1351
+ 'True': True,
1352
+ 'bool': <class 'bool'>,
1353
+ 'memoryview': <class 'memoryview'>,
1354
+ 'bytearray': <class 'bytearray'>,
1355
+ 'bytes': <class 'bytes'>,
1356
+ 'classmethod': <class 'classmethod'>,
1357
+ 'complex': <class 'complex'>,
1358
+ 'dict': <class 'dict'>,
1359
+ 'enumerate': <class 'enumerate'>,
1360
+ 'filter': <class 'filter'>,
1361
+ 'float': <class 'float'>,
1362
+ 'frozenset': <class 'frozenset'>,
1363
+ 'property': <class 'property'>,
1364
+ 'int': <class 'int'>,
1365
+ 'list': <class 'list'>,
1366
+ 'map': <class 'map'>,
1367
+ 'object': <class 'object'>,
1368
+ 'range': <class 'range'>,
1369
+ 'reversed': <class 'reversed'>,
1370
+ 'set': <class 'set'>,
1371
+ 'slice': <class 'slice'>,
1372
+ 'staticmethod': <class 'staticmethod'>,
1373
+ 'str': <class 'str'>,
1374
+ 'super': <class 'super'>,
1375
+ 'tuple': <class 'tuple'>,
1376
+ 'type': <class 'type'>,
1377
+ 'zip': <class 'zip'>,
1378
+ '__debug__': True,
1379
+ 'BaseException': <class 'BaseException'>,
1380
+ 'BaseExceptionGroup': <class 'BaseExceptionGroup'>,
1381
+ 'Exception': <class 'Exception'>,
1382
+ 'GeneratorExit': <class 'GeneratorExit'>,
1383
+ 'KeyboardInterrupt': <class 'KeyboardInterrupt'>,
1384
+ 'SystemExit': <class 'SystemExit'>,
1385
+ 'ArithmeticError': <class 'ArithmeticError'>,
1386
+ 'AssertionError': <class 'AssertionError'>,
1387
+ 'AttributeError': <class 'AttributeError'>,
1388
+ 'BufferError': <class 'BufferError'>,
1389
+ 'EOFError': <class 'EOFError'>,
1390
+ 'ImportError': <class 'ImportError'>,
1391
+ 'LookupError': <class 'LookupError'>,
1392
+ 'MemoryError': <class 'MemoryError'>,
1393
+ 'NameError': <class 'NameError'>,
1394
+ 'OSError': <class 'OSError'>,
1395
+ 'ReferenceError': <class 'ReferenceError'>,
1396
+ 'RuntimeError': <class 'RuntimeError'>,
1397
+ 'StopAsyncIteration': <class 'StopAsyncIteration'>,
1398
+ 'StopIteration': <class 'StopIteration'>,
1399
+ 'SyntaxError': <class 'SyntaxError'>,
1400
+ 'SystemError': <class 'SystemError'>,
1401
+ 'TypeError': <class 'TypeError'>,
1402
+ 'ValueError': <class 'ValueError'>,
1403
+ 'Warning': <class 'Warning'>,
1404
+ 'FloatingPointError': <class 'FloatingPointError'>,
1405
+ 'OverflowError': <class 'OverflowError'>,
1406
+ 'ZeroDivisionError': <class 'ZeroDivisionError'>,
1407
+ 'BytesWarning': <class 'BytesWarning'>,
1408
+ 'DeprecationWarning': <class 'DeprecationWarning'>,
1409
+ 'EncodingWarning': <class 'EncodingWarning'>,
1410
+ 'FutureWarning': <class 'FutureWarning'>,
1411
+ 'ImportWarning': <class 'ImportWarning'>,
1412
+ 'PendingDeprecationWarning': <class 'PendingDeprecationWarning'>,
1413
+ 'ResourceWarning': <class 'ResourceWarning'>,
1414
+ 'RuntimeWarning': <class 'RuntimeWarning'>,
1415
+ 'SyntaxWarning': <class 'SyntaxWarning'>,
1416
+ 'UnicodeWarning': <class 'UnicodeWarning'>,
1417
+ 'UserWarning': <class 'UserWarning'>,
1418
+ 'BlockingIOError': <class 'BlockingIOError'>,
1419
+ 'ChildProcessError': <class 'ChildProcessError'>,
1420
+ 'ConnectionError': <class 'ConnectionError'>,
1421
+ 'FileExistsError': <class 'FileExistsError'>,
1422
+ 'FileNotFoundError': <class 'FileNotFoundError'>,
1423
+ 'InterruptedError': <class 'InterruptedError'>,
1424
+ 'IsADirectoryError': <class 'IsADirectoryError'>,
1425
+ 'NotADirectoryError': <class 'NotADirectoryError'>,
1426
+ 'PermissionError': <class 'PermissionError'>,
1427
+ 'ProcessLookupError': <class 'ProcessLookupError'>,
1428
+ 'TimeoutError': <class 'TimeoutError'>,
1429
+ 'IndentationError': <class 'IndentationError'>,
1430
+ 'IndexError': <class 'IndexError'>,
1431
+ 'KeyError': <class 'KeyError'>,
1432
+ 'ModuleNotFoundError': <class 'ModuleNotFoundError'>,
1433
+ 'NotImplementedError': <class 'NotImplementedError'>,
1434
+ 'RecursionError': <class 'RecursionError'>,
1435
+ 'UnboundLocalError': <class 'UnboundLocalError'>,
1436
+ 'UnicodeError': <class 'UnicodeError'>,
1437
+ 'BrokenPipeError': <class 'BrokenPipeError'>,
1438
+ 'ConnectionAbortedError': <class 'ConnectionAbortedError'>,
1439
+ 'ConnectionRefusedError': <class 'ConnectionRefusedError'>,
1440
+ 'ConnectionResetError': <class 'ConnectionResetError'>,
1441
+ 'TabError': <class 'TabError'>,
1442
+ 'UnicodeDecodeError': <class 'UnicodeDecodeError'>,
1443
+ 'UnicodeEncodeError': <class 'UnicodeEncodeError'>,
1444
+ 'UnicodeTranslateError': <class 'UnicodeTranslateError'>,
1445
+ 'ExceptionGroup': <class 'ExceptionGroup'>,
1446
+ 'EnvironmentError': <class 'OSError'>,
1447
+ 'IOError': <class 'OSError'>,
1448
+ 'open': <built-in function open>,
1449
+ 'quit': Use quit() or Ctrl-D (i.e. EOF) to exit,
1450
+ 'exit': Use exit() or Ctrl-D (i.e. EOF) to exit,
1451
+ 'copyright': Copyright (c) 2001-2023 Python Software Foundation.
1452
+ All Rights Reserved.
1453
+
1454
+ Copyright (c) 2000 BeOpen.com.
1455
+ All Rights Reserved.
1456
+
1457
+ Copyright (c) 1995-2001 Corporation for National Research Initiatives.
1458
+ All Rights Reserved.
1459
+
1460
+ Copyright (c) 1991-1995 Stichting Mathematisch Centrum, Amsterdam.
1461
+ All Rights Reserved.,
1462
+ 'credits': Thanks to CWI, CNRI, BeOpen.com, Zope Corporation and a cast of thousands
1463
+ for supporting Python development. See www.python.org for more information.,
1464
+ 'license': Type license() to see the full license text,
1465
+ 'help': Type help() for interactive help, or help(object) for help about object.}},
1466
+ '__method__': {}}
1467
+ ```
1468
+
1133
1469
  ## log
1134
1470
 
1135
1471
  `log(text=None)`
@@ -1169,7 +1505,7 @@ print(password_generator())
1169
1505
 
1170
1506
  Output:
1171
1507
  ```py
1172
- 1,7'~v%p
1508
+ Stkt|aol
1173
1509
  ```
1174
1510
 
1175
1511
  ## pip_freeze_without_version
@@ -1238,7 +1574,7 @@ Output:
1238
1574
  __enter__ : https:/www.google.com
1239
1575
  __fspath__ : https:/www.google.com
1240
1576
  __getstate__ : (None, {'_drv': '', '_root': '', '_parts': ['https:', 'www.google.com'], '_str': 'https:/www.google.com'})
1241
- __hash__ : -9044097875519772453
1577
+ __hash__ : -8453991955770773482
1242
1578
  __init__ : None
1243
1579
  __init_subclass__ : None
1244
1580
  __module__ : pathlib
@@ -1251,8 +1587,8 @@ Output:
1251
1587
  _cached_cparts : ['https:', 'www.google.com']
1252
1588
  _cparts : ['https:', 'www.google.com']
1253
1589
  _drv :
1254
- _flavour : <pathlib._PosixFlavour object at 0x76ffdb35d0>
1255
- _hash : -9044097875519772453
1590
+ _flavour : <pathlib._PosixFlavour object at 0x735bd08d10>
1591
+ _hash : -8453991955770773482
1256
1592
  _parts : ['https:', 'www.google.com']
1257
1593
  _root :
1258
1594
  _str : https:/www.google.com
@@ -1274,7 +1610,7 @@ Output:
1274
1610
  is_reserved : False
1275
1611
  is_socket : False
1276
1612
  is_symlink : False
1277
- iterdir : <generator object Path.iterdir at 0x76f8d3a340>
1613
+ iterdir : <generator object Path.iterdir at 0x734ca1a6c0>
1278
1614
  joinpath : https:/www.google.com
1279
1615
  name : www.google.com
1280
1616
  parent : https:
@@ -1335,7 +1671,7 @@ print(random_bool())
1335
1671
 
1336
1672
  Output:
1337
1673
  ```py
1338
- True
1674
+ False
1339
1675
  ```
1340
1676
 
1341
1677
  ## set_timeout
@@ -1357,7 +1693,7 @@ x.cancel()
1357
1693
 
1358
1694
  Output:
1359
1695
  ```py
1360
- <Timer(Thread-2, started 510794906864)>
1696
+ <Timer(Thread-2, started 495177415920)>
1361
1697
  menghentikan timeout 7
1362
1698
  ```
1363
1699
 
@@ -1375,7 +1711,7 @@ print(list(sets_ordered(array)))
1375
1711
 
1376
1712
  Output:
1377
1713
  ```py
1378
- <generator object sets_ordered at 0x76ef89dbe0>
1714
+ <generator object sets_ordered at 0x734ca34790>
1379
1715
  [2, 3, 12, 42, 1, 43, 41, 4, 24, 32]
1380
1716
  ```
1381
1717
 
@@ -1482,6 +1818,19 @@ print(ExampleComparePerformance().compare_performance())
1482
1818
  print(ExampleComparePerformance().compare_performance())
1483
1819
  ```
1484
1820
 
1821
+ Output:
1822
+ ```py
1823
+ {'a': <generator object ExampleComparePerformance.a.<locals>.<genexpr> at 0x734ca34380>,
1824
+ 'b': (0, 1, 2, 3, 4, 5, 6, 7, 8, 9),
1825
+ 'c': [0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
1826
+ 'd': [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]}
1827
+ {'a': 0, 'b': 0, 'c': 0, 'd': 0}
1828
+ {'a': 0, 'b': 0, 'c': 0, 'd': 0}
1829
+ {'a': 0, 'b': 0, 'c': 0, 'd': 0}
1830
+ {'a': 0, 'b': 0, 'c': 0, 'd': 0}
1831
+ {'a': 0, 'b': 0, 'c': 0, 'd': 0}
1832
+ ```
1833
+
1485
1834
  ## PintUregQuantity
1486
1835
 
1487
1836
  `PintUregQuantity`