icon: package
Host filesystem access, available when PK_ENABLE_OS=1.
open(path, mode) constructs an io.FileIO. Both arguments are required.
Use modes such as 'r', 'w', 'a', 'rb', and 'wb'.
Binary modes ending in b read/write bytes; text modes read/write strings.
import os
file = open('example.txt', 'w')
try:
assert file.write('hello') == 5
except Exception:
file.close()
raise
file.close()
file = open('example.txt', 'r')
try:
text = file.read()
except Exception:
file.close()
raise
file.close()
assert text == 'hello'
assert os.path.exists('example.txt')
os.remove('example.txt')
| Method | Behavior |
|---|---|
read(size=-1) |
Read up to a byte count, or the remaining contents when omitted/negative. |
write(data) |
Write a string or bytes according to the mode; return the byte count written. |
tell() |
Return the current file position. |
seek(offset, whence) |
Seek using both arguments; return the C fseek status. |
flush(), close() |
Flush buffered output or close the handle. |
io.SEEK_SET, io.SEEK_CUR, and io.SEEK_END select the origin for
seek. There are no encoding/error-policy arguments, StringIO,
BytesIO, or full CPython text-stream interfaces.
Close files explicitly on both normal and exceptional paths. The context manager limitations also apply to file objects.
| API | Behavior |
|---|---|
getcwd() |
Current process working directory. |
chdir(path) |
Change that directory; this affects relative imports and file paths. |
remove(path) |
Remove a file through the host C library. |
path.exists(path) |
Test whether a path exists on supported targets. |
system(command) |
Execute a host command on desktop platforms and return its status. |
environ |
An initially empty dictionary, not a live view of the process environment. |
Availability of individual OS operations depends on the target. The module does not provide CPython's full path utilities or directory APIs. For virtual filesystems or packaged scripts, configure host import callbacks.
Implementation: os.c.