М97 Изучаем Python: программирование игр, визуализация данных, веб-приложения



Pdf көрінісі
бет145/334
Дата18.10.2023
өлшемі6,19 Mb.
#186390
1   ...   141   142   143   144   145   146   147   148   ...   334
Байланысты:
Изучаем Python

pi_string.py
filename = 'pi_digits.txt'
with open(filename) as file_object:
lines = file_object.readlines()

pi_string = ''

for line in lines:
pi_string += line.rstrip()

print(pi_string)
print(len(pi_string))
Сначала программа открывает файл и сохраняет каждую строку цифр в списке — 
точно так же, как это делалось в предыдущем примере. В точке 

создается пере-
менная 
pi_string
для хранения цифр числа «пи». Далее следует цикл, который 
добавляет к 
pi_string
каждую серию цифр, из которой удаляется символ новой 
строки 

. В точке 

программа выводит строку и ее длину:
3.1415926535 8979323846 2643383279
36
Переменная 
pi_string
содержит пропуски, которые присутствовали в начале 
каждой строки цифр. Чтобы удалить их, достаточно использовать 
strip()
вместо 
rstrip()
:


202
Глава 10 • Файлы и исключения
...
for line in lines:
pi_string += line.strip()
print(pi_string)
print(len(pi_string))
В итоге мы получаем строку, содержащую значение «пи» с точностью до 30 знаков. 
Длина строки равна 32 символам, потому что в нее также включается начальная 
цифра 3 и точка:
3.141592653589793238462643383279
32
ПРИМЕЧАНИЕ
Читая данные из текстового файла, Python интерпретирует весь текст 
в файле как строку . Если вы читаете из текстового файла число и хотите работать с ним 
в числовом контексте, преобразуйте его в целое число функцией 
int()
или в веще-
ственное число функцией 
float()
.
Большие файлы: миллион цифр
До настоящего момента мы ограничивались анализом текстового файла, кото-
рый состоял всего из трех строк, но код этих примеров будет работать и с много 
большими файлами. Начиная с текстового файла, содержащего значение «пи» до 
1 000 000 знаков (вместо 30), вы сможете создать одну строку, которая содержит 
все эти цифры. Изменять программу вообще не придется — достаточно передать ей 
другой файл. Также мы ограничимся выводом первых 50 цифр, чтобы не пришлось 
ждать, пока в терминале не прокрутится миллион знаков:
pi_string.py
filename = 'pi_million_digits.txt'
with open(filename) as file_object:
lines = file_object.readlines()
pi_string = ''
for line in lines:
pi_string += line.strip()
print(f"{pi_string[:52]}...")
print(len(pi_string))
Из выходных данных видно, что строка действительно содержит значение «пи» 
с точностью до 1 000 000 знаков:
3.14159265358979323846264338327950288419716939937510... 
1000002
Python не устанавливает никаких ограничений на длину данных, с которыми вы 
можете работать. Она ограничивается разве что объемом памяти вашей системы.


Чтение из файла


Достарыңызбен бөлісу:
1   ...   141   142   143   144   145   146   147   148   ...   334




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет