pypipr 1.0.148__tar.gz → 1.0.150__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.
- {pypipr-1.0.148 → pypipr-1.0.150}/PKG-INFO +177 -163
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/__init__.py +1 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/create_folder.py +8 -3
- pypipr-1.0.150/pypipr/pip_update_pypipr.py +7 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pyproject.toml +1 -1
- {pypipr-1.0.148 → pypipr-1.0.150}/readme.md +176 -162
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/ComparePerformance.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/LINUX.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/PintUreg.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/PintUregQuantity.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/RunParallel.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/TextCase.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/TextCase.py.bak +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/WINDOWS.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/__terminal__.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/auto_reload.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/avg.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/basename.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/batch_calculate.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/batchmaker.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/bin_to_int.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/calculate.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/choices.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/chr_to_int.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/chunk_array.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/console_run.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/datetime_from_string.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/datetime_now.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/dict_first.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/dirname.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/django_runserver.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/exit_if_empty.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/filter_empty.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/get_by_index.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/get_class_method.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/get_filemtime.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/get_filesize.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/github_init.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/github_pull.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/github_push.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/github_user.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/hex_to_int.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/iargv.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/idir.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/idumps.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/idumps_html.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/ienumerate.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/ienv.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/iexec.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/ijoin.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/iloads.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/iloads_html.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/input_char.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/int_to_bin.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/int_to_chr.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/int_to_hex.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/int_to_int.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/int_to_oct.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/iopen.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/iprint.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/irange.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/ireplace.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/is_empty.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/is_iterable.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/is_valid_url.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/iscandir.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/isplit.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/ivars.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/log.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/oct_to_int.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/password_generator.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/pip_freeze_without_version.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/poetry_publish.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/poetry_update_version.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/print_colorize.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/print_dir.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/print_log.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/print_to_last_line.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/random_bool.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/restart.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/set_timeout.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/sets_ordered.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/sqlite_delete_table.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/sqlite_get_all_tables.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/sqlite_get_data_table.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/str_cmp.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/text_colorize.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/to_str.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/traceback_filename.py +0 -0
- {pypipr-1.0.148 → pypipr-1.0.150}/pypipr/traceback_framename.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: pypipr
|
3
|
-
Version: 1.0.
|
3
|
+
Version: 1.0.150
|
4
4
|
Summary: The Python Package Index Project
|
5
5
|
Author: ufiapjj
|
6
6
|
Author-email: ufiapjj@gmail.com
|
@@ -248,8 +248,8 @@ iprint(irange("z", "a", 4))
|
|
248
248
|
|
249
249
|
Output:
|
250
250
|
```py
|
251
|
-
<generator object int_range at
|
252
|
-
<generator object int_range at
|
251
|
+
<generator object int_range at 0x7b87a2ac40>
|
252
|
+
<generator object int_range at 0x7b87a2ac40>
|
253
253
|
[13, 12, 11, 10, 9, 8, 7, 6]
|
254
254
|
[2, 5, 8]
|
255
255
|
[2, 5, 8]
|
@@ -281,7 +281,7 @@ print(list(batchmaker(s)))
|
|
281
281
|
|
282
282
|
Output:
|
283
283
|
```py
|
284
|
-
<generator object batchmaker at
|
284
|
+
<generator object batchmaker at 0x7b8798ec20>
|
285
285
|
['Urutan 1 dan 10 dan j dan Z saja.', 'Urutan 1 dan 10 dan j dan K saja.', 'Urutan 4 dan 10 dan j dan Z saja.', 'Urutan 4 dan 10 dan j dan K saja.']
|
286
286
|
```
|
287
287
|
|
@@ -335,7 +335,7 @@ print(list(batch_calculate("{1 10} m ** {1 3}")))
|
|
335
335
|
|
336
336
|
Output:
|
337
337
|
```py
|
338
|
-
<generator object batch_calculate at
|
338
|
+
<generator object batch_calculate at 0x7b877407c0>
|
339
339
|
[('1 m ** 1', <Quantity(1, 'meter')>), ('1 m ** 2', <Quantity(1, 'meter ** 2')>), ('2 m ** 1', <Quantity(2, 'meter')>), ('2 m ** 2', <Quantity(2, 'meter ** 2')>), ('3 m ** 1', <Quantity(3, 'meter')>), ('3 m ** 2', <Quantity(3, 'meter ** 2')>), ('4 m ** 1', <Quantity(4, 'meter')>), ('4 m ** 2', <Quantity(4, 'meter ** 2')>), ('5 m ** 1', <Quantity(5, 'meter')>), ('5 m ** 2', <Quantity(5, 'meter ** 2')>), ('6 m ** 1', <Quantity(6, 'meter')>), ('6 m ** 2', <Quantity(6, 'meter ** 2')>), ('7 m ** 1', <Quantity(7, 'meter')>), ('7 m ** 2', <Quantity(7, 'meter ** 2')>), ('8 m ** 1', <Quantity(8, 'meter')>), ('8 m ** 2', <Quantity(8, 'meter ** 2')>), ('9 m ** 1', <Quantity(9, 'meter')>), ('9 m ** 2', <Quantity(9, 'meter ** 2')>)]
|
340
340
|
```
|
341
341
|
|
@@ -441,13 +441,13 @@ print(list(chunk_array(arr, 5)))
|
|
441
441
|
|
442
442
|
Output:
|
443
443
|
```py
|
444
|
-
<generator object chunk_array at
|
444
|
+
<generator object chunk_array at 0x7b87a2ad40>
|
445
445
|
[[2, 3, 12, 3, 3], [42, 42, 1, 43, 2], [42, 41, 4, 24, 32], [42, 3, 12, 32, 42], [42]]
|
446
446
|
```
|
447
447
|
|
448
448
|
## create_folder
|
449
449
|
|
450
|
-
`create_folder(folder_name)`
|
450
|
+
`create_folder(folder_name, wait_until_success=True)`
|
451
451
|
|
452
452
|
Membuat folder.
|
453
453
|
Membuat folder secara recursive dengan permission.
|
@@ -492,9 +492,9 @@ print(datetime_now("Etc/GMT+7"))
|
|
492
492
|
|
493
493
|
Output:
|
494
494
|
```py
|
495
|
-
2024-08-06
|
496
|
-
2024-08-06
|
497
|
-
2024-08-
|
495
|
+
2024-08-06 16:09:00.057535+07:00
|
496
|
+
2024-08-06 09:09:00.059163+00:00
|
497
|
+
2024-08-06 02:09:00.062728-07:00
|
498
498
|
```
|
499
499
|
|
500
500
|
## dict_first
|
@@ -604,7 +604,7 @@ iprint(filter_empty(var))
|
|
604
604
|
|
605
605
|
Output:
|
606
606
|
```py
|
607
|
-
<generator object filter_empty at
|
607
|
+
<generator object filter_empty at 0x7b877404f0>
|
608
608
|
[1, '0', True, {}, ['eee']]
|
609
609
|
```
|
610
610
|
|
@@ -651,8 +651,8 @@ print(list(get_class_method(ExampleGetClassMethod)))
|
|
651
651
|
|
652
652
|
Output:
|
653
653
|
```py
|
654
|
-
<generator object get_class_method at
|
655
|
-
[<function ExampleGetClassMethod.a at
|
654
|
+
<generator object get_class_method at 0x7b87740a90>
|
655
|
+
[<function ExampleGetClassMethod.a at 0x7b877565c0>, <function ExampleGetClassMethod.b at 0x7b87756660>, <function ExampleGetClassMethod.c at 0x7b877567a0>, <function ExampleGetClassMethod.d at 0x7b87756840>]
|
656
656
|
```
|
657
657
|
|
658
658
|
## get_filesize
|
@@ -845,6 +845,7 @@ Output:
|
|
845
845
|
'pathlib',
|
846
846
|
'pint',
|
847
847
|
'pip_freeze_without_version',
|
848
|
+
'pip_update_pypipr',
|
848
849
|
'poetry_publish',
|
849
850
|
'poetry_update_version',
|
850
851
|
'pprint',
|
@@ -1070,7 +1071,7 @@ Output:
|
|
1070
1071
|
|
1071
1072
|
## ienumerate
|
1072
1073
|
|
1073
|
-
`ienumerate(iterator, start=0, key=<function int_to_int at
|
1074
|
+
`ienumerate(iterator, start=0, key=<function int_to_int at 0x7b8f712b60>)`
|
1074
1075
|
|
1075
1076
|
meningkatkan fungsi enumerate() pada python
|
1076
1077
|
untuk key menggunakan huruf dan basis angka lainnya.
|
@@ -1083,7 +1084,7 @@ iprint(ienumerate(it, key=int_to_chr))
|
|
1083
1084
|
|
1084
1085
|
Output:
|
1085
1086
|
```py
|
1086
|
-
<generator object ienumerate at
|
1087
|
+
<generator object ienumerate at 0x7b87740b80>
|
1087
1088
|
[('a', 'ini'), ('b', 'contoh'), ('c', 'enumerator')]
|
1088
1089
|
```
|
1089
1090
|
|
@@ -1150,7 +1151,7 @@ print(ijoin(10, ' '))
|
|
1150
1151
|
|
1151
1152
|
Output:
|
1152
1153
|
```py
|
1153
|
-
|
1154
|
+
qweqw, asd, dfs, weq
|
1154
1155
|
,ini,path,seperti,url,
|
1155
1156
|
ini,path,seperti,url
|
1156
1157
|
<li>satu</li>
|
@@ -1196,9 +1197,9 @@ Output:
|
|
1196
1197
|
```py
|
1197
1198
|
(['Home', 'Emas 1 Gram', 'History', 'Trend', 'Perak 1 Gram', 'Pluang'],
|
1198
1199
|
[['Harga Emas Hari Ini - Selasa, 06 Agustus 2024'],
|
1199
|
-
['Spot Emas USD↑2.
|
1200
|
+
['Spot Emas USD↑2.412,30 (+8,72) / oz',
|
1200
1201
|
'Kurs IDR↓16.154,00 (-80,00) / USD',
|
1201
|
-
'Emas IDR↓1.
|
1202
|
+
'Emas IDR↓1.252.860 (-1.653) / gr'],
|
1202
1203
|
['LM Antam (Jual)↓1.413.000 (-7.000) / gr',
|
1203
1204
|
'LM Antam (Beli)↓1.266.000 (-7.000) / gr']],
|
1204
1205
|
[['Harga Emas Hari Ini'],
|
@@ -1269,37 +1270,45 @@ Output:
|
|
1269
1270
|
'Update harga LM Pegadaian :31 Agustus 2023']],
|
1270
1271
|
[['Spot Harga Emas Hari Ini (Market Open)'],
|
1271
1272
|
['Satuan', 'USD', 'Kurs\xa0Dollar', 'IDR'],
|
1272
|
-
['Ounce\xa0(oz)', '2.
|
1273
|
-
['Gram\xa0(gr)', '77,
|
1274
|
-
['Kilogram\xa0(kg)', '77.
|
1275
|
-
['Update harga emas :06 Agustus 2024, pukul
|
1276
|
-
'2024, pukul
|
1273
|
+
['Ounce\xa0(oz)', '2.412,30 (+8,72)', '16.154,00 (-80,00)', '38.968.294'],
|
1274
|
+
['Gram\xa0(gr)', '77,56', '16.154,00', '1.252.860 (-1.653)'],
|
1275
|
+
['Kilogram\xa0(kg)', '77.557,25', '16.154,00', '1.252.859.752'],
|
1276
|
+
['Update harga emas :06 Agustus 2024, pukul 16:08Update kurs :06 Agustus '
|
1277
|
+
'2024, pukul 13:10']],
|
1277
1278
|
[['Gram', 'UBS Gold 99.99%'],
|
1278
1279
|
['Jual', 'Beli'],
|
1279
1280
|
['/ Batang', '/ Gram', '/ Batang', '/ Gram'],
|
1280
1281
|
['100',
|
1281
|
-
'135.
|
1282
|
-
'1.
|
1283
|
-
'
|
1284
|
-
'1.
|
1282
|
+
'135.600.000 (-400.000)',
|
1283
|
+
'1.356.000 (-4.000)',
|
1284
|
+
'129.498.000 (-1.300.000)',
|
1285
|
+
'1.294.980 (-13.000)'],
|
1285
1286
|
['50',
|
1286
|
-
'68.
|
1287
|
-
'1.
|
1288
|
-
'
|
1289
|
-
'1.
|
1287
|
+
'68.250.000 (-150.000)',
|
1288
|
+
'1.365.000 (-3.000)',
|
1289
|
+
'64.799.000 (-650.000)',
|
1290
|
+
'1.295.980 (-13.000)'],
|
1290
1291
|
['25',
|
1291
|
-
'34.
|
1292
|
-
'1.
|
1293
|
-
'32.
|
1294
|
-
'1.
|
1292
|
+
'34.150.000 (-100.000)',
|
1293
|
+
'1.366.000 (-4.000)',
|
1294
|
+
'32.498.500 (-325.000)',
|
1295
|
+
'1.299.940 (-13.000)'],
|
1295
1296
|
['10',
|
1296
|
-
'13.
|
1297
|
-
'1.
|
1298
|
-
'13.
|
1299
|
-
'1.
|
1300
|
-
['5',
|
1301
|
-
|
1302
|
-
|
1297
|
+
'13.710.000 (-40.000)',
|
1298
|
+
'1.371.000 (-4.000)',
|
1299
|
+
'13.058.000 (-130.000)',
|
1300
|
+
'1.305.800 (-13.000)'],
|
1301
|
+
['5',
|
1302
|
+
'6.880.000 (-20.000)',
|
1303
|
+
'1.376.000 (-4.000)',
|
1304
|
+
'6.584.000 (-65.000)',
|
1305
|
+
'1.316.800 (-13.000)'],
|
1306
|
+
['1',
|
1307
|
+
'1.413.000 (-7.000)',
|
1308
|
+
'1.413.000 (-7.000)',
|
1309
|
+
'1.348.000 (-13.000)',
|
1310
|
+
'1.348.000 (-13.000)'],
|
1311
|
+
['', 'Update :06 Agustus 2024, pukul 11:42']],
|
1303
1312
|
[['Konversi Satuan'],
|
1304
1313
|
['Satuan', 'Ounce (oz)', 'Gram (gr)', 'Kilogram (kg)'],
|
1305
1314
|
['Ounce\xa0(oz)', '1', '31,1034767696', '0,0311034768'],
|
@@ -1310,36 +1319,36 @@ Output:
|
|
1310
1319
|
['Unit', 'USD', 'IDR'],
|
1311
1320
|
['Angka', '+/-', 'Angka', '+/-'],
|
1312
1321
|
['Hari Ini', 'Kurs', '', '', '16.234', '-80-0,49%'],
|
1313
|
-
['oz', '2.403,58', '+
|
1314
|
-
['gr', '77,28', '+0,
|
1322
|
+
['oz', '2.403,58', '+8,72+0,36%', '39.019.718', '-51.424-0,13%'],
|
1323
|
+
['gr', '77,28', '+0,28+0,36%', '1.254.513', '-1.653-0,13%'],
|
1315
1324
|
['30 Hari', 'Kurs', '', '', '16.341', '-187-1,14%'],
|
1316
|
-
['oz', '2.391,59', '+
|
1317
|
-
['gr', '76,89', '+0,
|
1325
|
+
['oz', '2.391,59', '+20,71+0,87%', '39.080.996', '-112.702-0,29%'],
|
1326
|
+
['gr', '76,89', '+0,67+0,87%', '1.256.483', '-3.623-0,29%'],
|
1318
1327
|
['2 Bulan', 'Kurs', '', '', '16.279', '-125-0,77%'],
|
1319
|
-
['oz', '2.309,83', '+
|
1320
|
-
['gr', '74,26', '+3,
|
1328
|
+
['oz', '2.309,83', '+102,47+4,44%', '37.601.723', '+1.366.572+3,63%'],
|
1329
|
+
['gr', '74,26', '+3,29+4,44', '1.208.923', '+43.936+3,63%'],
|
1321
1330
|
['6 Bulan', 'Kurs', '', '', '15.734', '+420+2,67%'],
|
1322
|
-
['oz', '2.030,69', '+
|
1323
|
-
['gr', '65,29', '+12,
|
1331
|
+
['oz', '2.030,69', '+381,61+18,79%', '31.950.876', '+7.017.418+21,96%'],
|
1332
|
+
['gr', '65,29', '+12,27+18,79%', '1.027.245', '+225.615+21,96%'],
|
1324
1333
|
['1 Tahun', 'Kurs', '', '', '15.731', '+423+2,69%'],
|
1325
|
-
['oz', '1.823,86', '+
|
1326
|
-
['gr', '58,64', '+18,
|
1334
|
+
['oz', '1.823,86', '+588,44+32,26%', '28.691.142', '+10.277.153+35,82%'],
|
1335
|
+
['gr', '58,64', '+18,92+32,26%', '922.442', '+330.418+35,82%'],
|
1327
1336
|
['2 Tahun', 'Kurs', '', '', '14.929', '+1.225+8,21%'],
|
1328
|
-
['oz', '1.787,68', '+
|
1329
|
-
['gr', '57,48', '+
|
1337
|
+
['oz', '1.787,68', '+624,62+34,94%', '26.688.275', '+12.280.019+46,01%'],
|
1338
|
+
['gr', '57,48', '+20,08+34,94%', '858.048', '+394.812+46,01%'],
|
1330
1339
|
['3 Tahun', 'Kurs', '', '', '14.342', '+1.812+12,63%'],
|
1331
|
-
['oz', '1.763,69', '+
|
1332
|
-
['gr', '56,70', '+20,
|
1340
|
+
['oz', '1.763,69', '+648,61+36,78%', '25.294.842', '+13.673.452+54,06%'],
|
1341
|
+
['gr', '56,70', '+20,85+36,78%', '813.248', '+439.612+54,06%'],
|
1333
1342
|
['5 Tahun', 'Kurs', '', '', '14.231', '+1.923+13,51%'],
|
1334
|
-
['oz', '1.496,30', '+
|
1335
|
-
['gr', '48,11', '+29,
|
1343
|
+
['oz', '1.496,30', '+916,00+61,22%', '21.293.845', '+17.674.449+83,00%'],
|
1344
|
+
['gr', '48,11', '+29,45+61,22%', '684.613', '+568.247+83,00%']])
|
1336
1345
|
(['Home', 'Emas 1 Gram', 'History', 'Trend', 'Perak 1 Gram', 'Pluang'],
|
1337
1346
|
[[''],
|
1338
1347
|
['Emas 24 KaratHarga Emas 1 Gram', ''],
|
1339
|
-
['USD', '77,
|
1340
|
-
['KURS', '16.
|
1341
|
-
['IDR', '1.253.
|
1342
|
-
['Selasa, 06 Agustus 2024
|
1348
|
+
['USD', '77,56↑', '+0,28+0,36%'],
|
1349
|
+
['KURS', '16.159,85↓', '-45,15-0,28%'],
|
1350
|
+
['IDR', '1.253.313,46↑', '+1.041,43+0,08%'],
|
1351
|
+
['Selasa, 06 Agustus 2024 16:08']],
|
1343
1352
|
[[''],
|
1344
1353
|
['Emas 1 Gram (IDR)Emas 1 Gram (USD)Kurs USD-IDR',
|
1345
1354
|
'Hari Ini',
|
@@ -1350,19 +1359,19 @@ Output:
|
|
1350
1359
|
'']],
|
1351
1360
|
[['Pergerakkan Harga Emas 1 Gram'],
|
1352
1361
|
['', 'Penutupan Kemarin', 'Pergerakkan Hari Ini', 'Rata-rata'],
|
1353
|
-
['USD', '77,28', '77,28 - 77,
|
1354
|
-
['KURS', '16.205,00', '16.
|
1355
|
-
['IDR', '1.252.272,03', '1.252.272,03 - 1.253.
|
1362
|
+
['USD', '77,28', '77,28 - 77,56', '77,42'],
|
1363
|
+
['KURS', '16.205,00', '16.159,85 - 16.205,00', '16.182,43'],
|
1364
|
+
['IDR', '1.252.272,03', '1.252.272,03 - 1.253.313,46', '1.252.792,75'],
|
1356
1365
|
[''],
|
1357
1366
|
['', 'Awal Tahun', 'Pergerakkan YTD', '+/- YTD'],
|
1358
|
-
['USD', '66,32', '64,07 - 79,08', '+11,
|
1359
|
-
['KURS', '15.390,10', '15.390,00 - 16.509,65', '+
|
1360
|
-
['IDR', '1.020.729,53', '997.660,12 - 1.279.266,69', '+232.
|
1367
|
+
['USD', '66,32', '64,07 - 79,08', '+11,24 (16,95%)'],
|
1368
|
+
['KURS', '15.390,10', '15.390,00 - 16.509,65', '+769,75 (5,00%)'],
|
1369
|
+
['IDR', '1.020.729,53', '997.660,12 - 1.279.266,69', '+232.583,93 (22,79%)'],
|
1361
1370
|
[''],
|
1362
1371
|
['', 'Tahun Lalu / 52 Minggu', 'Pergerakkan 52 Minggu', '+/- 52 Minggu'],
|
1363
|
-
['USD', '62,46', '58,43 - 79,08', '+
|
1364
|
-
['KURS', '15.152,90', '15.152,90 - 16.509,65', '+1.
|
1365
|
-
['IDR', '946.487,57', '912.925,68 - 1.279.266,69', '+306.
|
1372
|
+
['USD', '62,46', '58,43 - 79,08', '+15,10 (24,18%)'],
|
1373
|
+
['KURS', '15.152,90', '15.152,90 - 16.509,65', '+1.006,95 (6,65%)'],
|
1374
|
+
['IDR', '946.487,57', '912.925,68 - 1.279.266,69', '+306.825,89 (32,42%)']])
|
1366
1375
|
```
|
1367
1376
|
|
1368
1377
|
## iloads
|
@@ -1492,7 +1501,7 @@ Output:
|
|
1492
1501
|
```py
|
1493
1502
|
8
|
1494
1503
|
['mana', 'aja']
|
1495
|
-
[<Element a at
|
1504
|
+
[<Element a at 0x7b8775f980>, <Element a at 0x7b877b1860>, <Element a at 0x7b877b1900>, <Element a at 0x7b877b1950>, <Element a at 0x7b877b19a0>, <Element a at 0x7b877b19f0>, <Element a at 0x7b877b1a40>, <Element a at 0x7b877b1a90>, <Element a at 0x7b877b1ae0>, <Element a at 0x7b877b1b30>, <Element a at 0x7b877b1b80>, <Element a at 0x7b877b1bd0>, <Element a at 0x7b877b1c20>, <Element a at 0x7b877b1c70>, <Element a at 0x7b877b1cc0>, <Element a at 0x7b877b1d10>, <Element a at 0x7b877b1d60>, <Element a at 0x7b877b1db0>, <Element a at 0x7b877b1e00>, <Element a at 0x7b877b1e50>]
|
1496
1505
|
False
|
1497
1506
|
```
|
1498
1507
|
|
@@ -1554,7 +1563,7 @@ print(list(iscandir("./", recursive=False, scan_file=False)))
|
|
1554
1563
|
|
1555
1564
|
Output:
|
1556
1565
|
```py
|
1557
|
-
<generator object iscandir at
|
1566
|
+
<generator object iscandir at 0x7b87a2b140>
|
1558
1567
|
[PosixPath('.git'), PosixPath('.vscode'), PosixPath('pypipr'), PosixPath('__pycache__'), PosixPath('dist')]
|
1559
1568
|
```
|
1560
1569
|
|
@@ -1587,88 +1596,89 @@ iprint(ivars(__import__('pypipr')))
|
|
1587
1596
|
|
1588
1597
|
Output:
|
1589
1598
|
```py
|
1590
|
-
{'function': {'avg': <function avg at
|
1591
|
-
'get_filemtime': <function get_filemtime at
|
1592
|
-
'print_colorize': <function print_colorize at
|
1593
|
-
'print_log': <function print_log at
|
1594
|
-
'console_run': <function console_run at
|
1595
|
-
'auto_reload': <function auto_reload at
|
1596
|
-
'basename': <function basename at
|
1597
|
-
'chr_to_int': <function chr_to_int at
|
1598
|
-
'int_to_chr': <function int_to_chr at
|
1599
|
-
'irange': <function irange at
|
1600
|
-
'batchmaker': <function batchmaker at
|
1601
|
-
'calculate': <function calculate at
|
1602
|
-
'batch_calculate': <function batch_calculate at
|
1603
|
-
'bin_to_int': <function bin_to_int at
|
1604
|
-
'is_empty': <function is_empty at
|
1605
|
-
'exit_if_empty': <function exit_if_empty at
|
1606
|
-
'input_char': <function input_char at
|
1607
|
-
'choices': <function choices at
|
1608
|
-
'chunk_array': <function chunk_array at
|
1609
|
-
'create_folder': <function create_folder at
|
1610
|
-
'datetime_from_string': <function datetime_from_string at
|
1611
|
-
'datetime_now': <function datetime_now at
|
1612
|
-
'dict_first': <function dict_first at
|
1613
|
-
'dirname': <function dirname at
|
1614
|
-
'django_runserver': <function django_runserver at
|
1615
|
-
'is_iterable': <function is_iterable at
|
1616
|
-
'to_str': <function to_str at
|
1617
|
-
'filter_empty': <function filter_empty at
|
1618
|
-
'get_by_index': <function get_by_index at
|
1619
|
-
'get_class_method': <function get_class_method at
|
1620
|
-
'get_filesize': <function get_filesize at
|
1621
|
-
'github_init': <function github_init at
|
1622
|
-
'github_pull': <function github_pull at
|
1623
|
-
'github_push': <function github_push at
|
1624
|
-
'github_user': <function github_user at
|
1625
|
-
'hex_to_int': <function hex_to_int at
|
1626
|
-
'iargv': <function iargv at
|
1627
|
-
'idir': <function idir at
|
1628
|
-
'idumps_html': <function idumps_html at
|
1629
|
-
'idumps': <function idumps at
|
1630
|
-
'int_to_int': <function int_to_int at
|
1631
|
-
'ienumerate': <function ienumerate at
|
1632
|
-
'ienv': <function ienv at
|
1633
|
-
'iexec': <function iexec at
|
1634
|
-
'ijoin': <function ijoin at
|
1635
|
-
'iloads_html': <function iloads_html at
|
1636
|
-
'iloads': <function iloads at
|
1637
|
-
'int_to_bin': <function int_to_bin at
|
1638
|
-
'int_to_hex': <function int_to_hex at
|
1639
|
-
'int_to_oct': <function int_to_oct at
|
1640
|
-
'is_valid_url': <function is_valid_url at
|
1641
|
-
'iopen': <function iopen at
|
1642
|
-
'iprint': <function iprint at
|
1643
|
-
'ireplace': <function ireplace at
|
1644
|
-
'iscandir': <function iscandir at
|
1645
|
-
'isplit': <function isplit at
|
1646
|
-
'ivars': <function ivars at
|
1647
|
-
'log': <function log at
|
1648
|
-
'oct_to_int': <function oct_to_int at
|
1649
|
-
'password_generator': <function password_generator at
|
1650
|
-
'pip_freeze_without_version': <function pip_freeze_without_version at
|
1651
|
-
'
|
1652
|
-
'
|
1653
|
-
'
|
1654
|
-
'
|
1655
|
-
'
|
1656
|
-
'
|
1657
|
-
'
|
1658
|
-
'
|
1659
|
-
'
|
1660
|
-
'
|
1661
|
-
'
|
1662
|
-
'
|
1663
|
-
'
|
1664
|
-
'
|
1665
|
-
'
|
1599
|
+
{'function': {'avg': <function avg at 0x7b91be0040>,
|
1600
|
+
'get_filemtime': <function get_filemtime at 0x7b8f659d00>,
|
1601
|
+
'print_colorize': <function print_colorize at 0x7b8f659ee0>,
|
1602
|
+
'print_log': <function print_log at 0x7b8f659da0>,
|
1603
|
+
'console_run': <function console_run at 0x7b8f659e40>,
|
1604
|
+
'auto_reload': <function auto_reload at 0x7b8f659620>,
|
1605
|
+
'basename': <function basename at 0x7b8f659c60>,
|
1606
|
+
'chr_to_int': <function chr_to_int at 0x7b8f65a480>,
|
1607
|
+
'int_to_chr': <function int_to_chr at 0x7b8f65a520>,
|
1608
|
+
'irange': <function irange at 0x7b8f65a7a0>,
|
1609
|
+
'batchmaker': <function batchmaker at 0x7b8f65a160>,
|
1610
|
+
'calculate': <function calculate at 0x7b8f65a2a0>,
|
1611
|
+
'batch_calculate': <function batch_calculate at 0x7b8f65a020>,
|
1612
|
+
'bin_to_int': <function bin_to_int at 0x7b8f65a0c0>,
|
1613
|
+
'is_empty': <function is_empty at 0x7b8f65af20>,
|
1614
|
+
'exit_if_empty': <function exit_if_empty at 0x7b8f65ade0>,
|
1615
|
+
'input_char': <function input_char at 0x7b8f65a3e0>,
|
1616
|
+
'choices': <function choices at 0x7b8f65b1a0>,
|
1617
|
+
'chunk_array': <function chunk_array at 0x7b8f65b240>,
|
1618
|
+
'create_folder': <function create_folder at 0x7b8f65b380>,
|
1619
|
+
'datetime_from_string': <function datetime_from_string at 0x7b8f65b420>,
|
1620
|
+
'datetime_now': <function datetime_now at 0x7b8f65b4c0>,
|
1621
|
+
'dict_first': <function dict_first at 0x7b8f67d6c0>,
|
1622
|
+
'dirname': <function dirname at 0x7b8f67d760>,
|
1623
|
+
'django_runserver': <function django_runserver at 0x7b8f67da80>,
|
1624
|
+
'is_iterable': <function is_iterable at 0x7b8f67de40>,
|
1625
|
+
'to_str': <function to_str at 0x7b8f67dee0>,
|
1626
|
+
'filter_empty': <function filter_empty at 0x7b8f67dd00>,
|
1627
|
+
'get_by_index': <function get_by_index at 0x7b8f67dda0>,
|
1628
|
+
'get_class_method': <function get_class_method at 0x7b8f67df80>,
|
1629
|
+
'get_filesize': <function get_filesize at 0x7b8f67e0c0>,
|
1630
|
+
'github_init': <function github_init at 0x7b8f67e160>,
|
1631
|
+
'github_pull': <function github_pull at 0x7b8f67e200>,
|
1632
|
+
'github_push': <function github_push at 0x7b8f67e340>,
|
1633
|
+
'github_user': <function github_user at 0x7b8f67e3e0>,
|
1634
|
+
'hex_to_int': <function hex_to_int at 0x7b8f67e480>,
|
1635
|
+
'iargv': <function iargv at 0x7b8f67e520>,
|
1636
|
+
'idir': <function idir at 0x7b8f67e5c0>,
|
1637
|
+
'idumps_html': <function idumps_html at 0x7b8f67eca0>,
|
1638
|
+
'idumps': <function idumps at 0x7b8f67e700>,
|
1639
|
+
'int_to_int': <function int_to_int at 0x7b8f712b60>,
|
1640
|
+
'ienumerate': <function ienumerate at 0x7b8f67ec00>,
|
1641
|
+
'ienv': <function ienv at 0x7b8f701080>,
|
1642
|
+
'iexec': <function iexec at 0x7b8f712c00>,
|
1643
|
+
'ijoin': <function ijoin at 0x7b8f712d40>,
|
1644
|
+
'iloads_html': <function iloads_html at 0x7b8f712f20>,
|
1645
|
+
'iloads': <function iloads at 0x7b925a2020>,
|
1646
|
+
'int_to_bin': <function int_to_bin at 0x7b8f712ca0>,
|
1647
|
+
'int_to_hex': <function int_to_hex at 0x7b8f712e80>,
|
1648
|
+
'int_to_oct': <function int_to_oct at 0x7b8f712fc0>,
|
1649
|
+
'is_valid_url': <function is_valid_url at 0x7b8f4dad40>,
|
1650
|
+
'iopen': <function iopen at 0x7b8f7131a0>,
|
1651
|
+
'iprint': <function iprint at 0x7b8f4da840>,
|
1652
|
+
'ireplace': <function ireplace at 0x7b8f4da980>,
|
1653
|
+
'iscandir': <function iscandir at 0x7b890c3b00>,
|
1654
|
+
'isplit': <function isplit at 0x7b890c3ba0>,
|
1655
|
+
'ivars': <function ivars at 0x7b890c3c40>,
|
1656
|
+
'log': <function log at 0x7b890c3ce0>,
|
1657
|
+
'oct_to_int': <function oct_to_int at 0x7b890c3d80>,
|
1658
|
+
'password_generator': <function password_generator at 0x7b890c3e20>,
|
1659
|
+
'pip_freeze_without_version': <function pip_freeze_without_version at 0x7b890c3f60>,
|
1660
|
+
'pip_update_pypipr': <function pip_update_pypipr at 0x7b890d0040>,
|
1661
|
+
'poetry_publish': <function poetry_publish at 0x7b890d00e0>,
|
1662
|
+
'poetry_update_version': <function poetry_update_version at 0x7b890d0220>,
|
1663
|
+
'print_dir': <function print_dir at 0x7b890d0400>,
|
1664
|
+
'print_to_last_line': <function print_to_last_line at 0x7b890d04a0>,
|
1665
|
+
'random_bool': <function random_bool at 0x7b890d0540>,
|
1666
|
+
'restart': <function restart at 0x7b890d05e0>,
|
1667
|
+
'set_timeout': <function set_timeout at 0x7b890d0680>,
|
1668
|
+
'sets_ordered': <function sets_ordered at 0x7b890d0720>,
|
1669
|
+
'sqlite_delete_table': <function sqlite_delete_table at 0x7b890d07c0>,
|
1670
|
+
'sqlite_get_all_tables': <function sqlite_get_all_tables at 0x7b890d09a0>,
|
1671
|
+
'sqlite_get_data_table': <function sqlite_get_data_table at 0x7b890d1120>,
|
1672
|
+
'str_cmp': <function str_cmp at 0x7b890d11c0>,
|
1673
|
+
'text_colorize': <function text_colorize at 0x7b890d1260>,
|
1674
|
+
'traceback_filename': <function traceback_filename at 0x7b890d1300>,
|
1675
|
+
'traceback_framename': <function traceback_framename at 0x7b890d13a0>},
|
1666
1676
|
'class': {'ComparePerformance': <class 'pypipr.ComparePerformance.ComparePerformance'>,
|
1667
1677
|
'PintUregQuantity': <class 'pint.Quantity'>,
|
1668
1678
|
'RunParallel': <class 'pypipr.RunParallel.RunParallel'>,
|
1669
1679
|
'TextCase': <class 'pypipr.TextCase.TextCase'>},
|
1670
1680
|
'variable': {'LINUX': True,
|
1671
|
-
'PintUreg': <pint.registry.UnitRegistry object at
|
1681
|
+
'PintUreg': <pint.registry.UnitRegistry object at 0x7b91beea90>,
|
1672
1682
|
'WINDOWS': False},
|
1673
1683
|
'module': {'asyncio': <module 'asyncio' from '/data/data/com.termux/files/usr/lib/python3.11/asyncio/__init__.py'>,
|
1674
1684
|
'colorama': <module 'colorama' from '/data/data/com.termux/files/home/.cache/pypoetry/virtualenvs/pypipr-ZoJyDxLL-py3.11/lib/python3.11/site-packages/colorama/__init__.py'>,
|
@@ -1759,7 +1769,7 @@ print(password_generator())
|
|
1759
1769
|
|
1760
1770
|
Output:
|
1761
1771
|
```py
|
1762
|
-
|
1772
|
+
{?um$Lcj
|
1763
1773
|
```
|
1764
1774
|
|
1765
1775
|
## pip_freeze_without_version
|
@@ -1773,6 +1783,10 @@ Bertujuan untuk menggunakan Batteries Included Python.
|
|
1773
1783
|
print(pip_freeze_without_version())
|
1774
1784
|
```
|
1775
1785
|
|
1786
|
+
## pip_update_pypipr
|
1787
|
+
|
1788
|
+
`pip_update_pypipr()`
|
1789
|
+
|
1776
1790
|
## poetry_publish
|
1777
1791
|
|
1778
1792
|
`poetry_publish(token=None)`
|
@@ -1817,7 +1831,7 @@ Output:
|
|
1817
1831
|
__enter__ : https:/www.google.com
|
1818
1832
|
__fspath__ : https:/www.google.com
|
1819
1833
|
__getstate__ : (None, {'_drv': '', '_root': '', '_parts': ['https:', 'www.google.com'], '_str': 'https:/www.google.com'})
|
1820
|
-
__hash__ :
|
1834
|
+
__hash__ : 4812105544279715249
|
1821
1835
|
__init__ : None
|
1822
1836
|
__init_subclass__ : None
|
1823
1837
|
__module__ : pathlib
|
@@ -1830,8 +1844,8 @@ Output:
|
|
1830
1844
|
_cached_cparts : ['https:', 'www.google.com']
|
1831
1845
|
_cparts : ['https:', 'www.google.com']
|
1832
1846
|
_drv :
|
1833
|
-
_flavour : <pathlib._PosixFlavour object at
|
1834
|
-
_hash :
|
1847
|
+
_flavour : <pathlib._PosixFlavour object at 0x7b919a16d0>
|
1848
|
+
_hash : 4812105544279715249
|
1835
1849
|
_parts : ['https:', 'www.google.com']
|
1836
1850
|
_root :
|
1837
1851
|
_str : https:/www.google.com
|
@@ -1853,7 +1867,7 @@ Output:
|
|
1853
1867
|
is_reserved : False
|
1854
1868
|
is_socket : False
|
1855
1869
|
is_symlink : False
|
1856
|
-
iterdir : <generator object Path.iterdir at
|
1870
|
+
iterdir : <generator object Path.iterdir at 0x7b8775a500>
|
1857
1871
|
joinpath : https:/www.google.com
|
1858
1872
|
name : www.google.com
|
1859
1873
|
parent : https:
|
@@ -1938,7 +1952,7 @@ x.cancel()
|
|
1938
1952
|
|
1939
1953
|
Output:
|
1940
1954
|
```py
|
1941
|
-
<Timer(Thread-2, started
|
1955
|
+
<Timer(Thread-2, started 530527010032)>
|
1942
1956
|
menghentikan timeout 7
|
1943
1957
|
```
|
1944
1958
|
|
@@ -1956,7 +1970,7 @@ print(list(sets_ordered(array)))
|
|
1956
1970
|
|
1957
1971
|
Output:
|
1958
1972
|
```py
|
1959
|
-
<generator object sets_ordered at
|
1973
|
+
<generator object sets_ordered at 0x7b8777cc70>
|
1960
1974
|
[2, 3, 12, 42, 1, 43, 41, 4, 24, 32]
|
1961
1975
|
```
|
1962
1976
|
|
@@ -2070,15 +2084,15 @@ print(ExampleComparePerformance().compare_performance())
|
|
2070
2084
|
|
2071
2085
|
Output:
|
2072
2086
|
```py
|
2073
|
-
{'a': <generator object ExampleComparePerformance.a.<locals>.<genexpr> at
|
2087
|
+
{'a': <generator object ExampleComparePerformance.a.<locals>.<genexpr> at 0x7b8777c1e0>,
|
2074
2088
|
'b': (0, 1, 2, 3, 4, 5, 6, 7, 8, 9),
|
2075
2089
|
'c': [0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
|
2076
2090
|
'd': [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]}
|
2077
|
-
{'a':
|
2078
|
-
{'a':
|
2079
|
-
{'a':
|
2080
|
-
{'a':
|
2081
|
-
{'a':
|
2091
|
+
{'a': 179, 'b': 134, 'c': 100, 'd': 144}
|
2092
|
+
{'a': 146, 'b': 146, 'c': 100, 'd': 121}
|
2093
|
+
{'a': 132, 'b': 138, 'c': 100, 'd': 123}
|
2094
|
+
{'a': 125, 'b': 133, 'c': 100, 'd': 129}
|
2095
|
+
{'a': 121, 'b': 132, 'c': 100, 'd': 123}
|
2082
2096
|
```
|
2083
2097
|
|
2084
2098
|
## PintUregQuantity
|
@@ -63,6 +63,7 @@ from .log import log
|
|
63
63
|
from .oct_to_int import oct_to_int
|
64
64
|
from .password_generator import password_generator
|
65
65
|
from .pip_freeze_without_version import pip_freeze_without_version
|
66
|
+
from .pip_update_pypipr import pip_update_pypipr
|
66
67
|
from .poetry_publish import poetry_publish
|
67
68
|
from .poetry_update_version import poetry_update_version
|
68
69
|
from .print_colorize import print_colorize
|
@@ -1,7 +1,8 @@
|
|
1
|
-
import
|
1
|
+
from pathlib import Path
|
2
|
+
from time import sleep
|
2
3
|
|
3
4
|
|
4
|
-
def create_folder(folder_name):
|
5
|
+
def create_folder(folder_name, wait_until_success=True):
|
5
6
|
"""
|
6
7
|
Membuat folder.
|
7
8
|
Membuat folder secara recursive dengan permission.
|
@@ -12,5 +13,9 @@ def create_folder(folder_name):
|
|
12
13
|
create_folder("./contoh_membuat_folder/secara/recursive")
|
13
14
|
```
|
14
15
|
"""
|
15
|
-
|
16
|
+
p = Path(folder_name)
|
17
|
+
p.mkdir(parents=True, exist_ok=True)
|
18
|
+
if wait_until_success:
|
19
|
+
while not p.exists():
|
20
|
+
sleep(0.1)
|
16
21
|
|