Message371028
Example of sys.orig_argv usage to re-execute the Python process with different options:
---
import sys
import os
if not sys.flags.utf8_mode:
# Force UTF-8 mode
argv = sys.orig_argv.copy()
argv[1:1] = ["-X", "utf8"]
print(f"Re-execute to force UTF-8 mode! argv={argv}")
os.execv(argv[0], argv)
print(f"Everybody loves UTF-8! utf8_mode={sys.flags.utf8_mode}")
---
Example coming from discussions on the PEP 597 :-)
Output:
---
$ ./python force_utf8_mode.py
Re-execute to force UTF-8 mode! argv=['./python', '-X', 'utf8', 'force_utf8_mode.py']
Everybody loves UTF-8! utf8_mode=1
--- |
|
Date |
User |
Action |
Args |
2020-06-08 17:25:18 | vstinner | set | recipients:
+ vstinner, georg.brandl, pitrou, jwilk, r.david.murray, jgehrcke, docs@python, zach.ware, krivushinme |
2020-06-08 17:25:18 | vstinner | set | messageid: <1591637118.48.0.413477965829.issue23427@roundup.psfhosted.org> |
2020-06-08 17:25:18 | vstinner | link | issue23427 messages |
2020-06-08 17:25:18 | vstinner | create | |
|