Печать
Категория: Файлҳо
Просмотров: 961

File9. Номи ду файли ададҳои ҳақиқӣ (файлҳое, ки ададҳои ҳақиқиро нигоҳ медоранд) дода шудааст.
Маълум аст, ки яке аз ин файлҳо (на ҳатман якум) вуҷуд дораду холӣ нест ва файли дигар дар каталоги ҷорӣ вуҷуд надорад. Файли вуҷуд надошта сохта шавад ва ба он элементҳои охирин ва якуми файли мавҷуда (дар ҳамин тартиб) сабт карда шаванд.

Ҳал дар Python 3:

import random
import os

x1 = random.randrange(1,3)
file1_name = "file09_"+str(x1)+".txt"
print("Input file: ",file1_name)
try:
if os.path.exists(file1_name):
os.remove(file1_name)
print("Deleted file: ",file1_name)
except IOError:
print('Delete error:',file1_name)

print("Writing to file:",file1_name)
N = random.randrange(2,21)
try:
f = open(file1_name, "w")
try:
for i in range(N):
x = random.uniform(-100, 100)
print(i,":",x)
f.write(str(x)+"\n")
finally:
f.close()
except IOError:
print('Write error: ',file1_name)

print()
print("Reading from file:",file1_name)
N = 0
try:
with open(file1_name,'r') as f:
for line in f:
x = float(line)
print(N,":",x)
N += 1
if N == 1:
x_first = x
a4 = x
else:
x_last = x
except IOError:
print('Open error: ',file1_name)

x2 = x1%2+1
file2_name = "file09_"+str(x2)+".txt"
print("Output file: ",file2_name)
print("Writing to file:",file2_name)
N = random.randrange(2,21)
try:
f = open(file2_name, "w")
try:
f.write(str(x_first)+"\n")
print("First:",x_first)
f.write(str(x_last)+"\n")
print("Last:",x_last)
finally:
f.close()
except IOError:
print('Write error: ',file2_name)