summaryrefslogtreecommitdiff
path: root/day1/task5
diff options
context:
space:
mode:
authorАндрей Гущин <saintruler@gmail.com>2019-03-15 19:32:03 +0300
committerАндрей Гущин <saintruler@gmail.com>2019-03-15 19:32:03 +0300
commit7a5d1a5ad9e4369b1e5ae0332fbce94051944f37 (patch)
treef399e65abf5a439780a5e8001d3d25b8388ce9d5 /day1/task5
parent93137896beb12fc8881979050d071ff2c3c02c47 (diff)
parent5fac83c6f30c9ed8c1a4ec2bf3ffc54c249632b8 (diff)
Merge branch 'day1_task5' into 'master'
Day 1 Task 5 See merge request saintruler/trainee!1
Diffstat (limited to 'day1/task5')
-rw-r--r--day1/task5/task5.py20
-rw-r--r--day1/task5/task5_data.txt1
2 files changed, 21 insertions, 0 deletions
diff --git a/day1/task5/task5.py b/day1/task5/task5.py
new file mode 100644
index 0000000..2869247
--- /dev/null
+++ b/day1/task5/task5.py
@@ -0,0 +1,20 @@
+import os
+
+read_path = os.path.join(os.getcwd(), 'task5_data.txt')
+write_path = os.path.join(os.getcwd(), 'task5_data_new.txt')
+
+if not os.access(read_path, os.R_OK):
+ print('Файл "{}" не доступен для чтения'.format(read_path))
+elif not os.access(write_path, os.W_OK):
+ print('Файл "{}" не доступен для записи'.format(write_path))
+
+else:
+ with open(read_path) as f:
+ print(f.read())
+
+ with open('task5_data.txt', 'rb') as input_byte, open(write_path, 'wb') as out:
+ char = input_byte.read(1)
+ while char:
+ number = int(char.hex(), 16)
+ out.write(bytes([number ^ 2]))
+ char = input_byte.read(1)
diff --git a/day1/task5/task5_data.txt b/day1/task5/task5_data.txt
new file mode 100644
index 0000000..2dfc0ba
--- /dev/null
+++ b/day1/task5/task5_data.txt
@@ -0,0 +1 @@
+12йцas \ No newline at end of file