Основы программирования на языке Python : учебное пособие


 СТАНДАРТНЫЕ ФАЙЛЫ ВВОДА/ВЫВОДА ДАННЫХ



Download 1,45 Mb.
Pdf ko'rish
bet14/44
Sana24.02.2022
Hajmi1,45 Mb.
#186836
TuriУчебное пособие
1   ...   10   11   12   13   14   15   16   17   ...   44
Bog'liq
978-5-7996-1198-9 2014

16. СТАНДАРТНЫЕ ФАЙЛЫ ВВОДА/ВЫВОДА ДАННЫХ
И ВЫВОДА ОШИБОК 
В интерпретаторе предусмотрены три стандартных объекта 
файла, которые известны под названием стандартного файла ввода 
данных, стандартного файла вывода данных и стандартного файла 
вывода ошибок и доступны в модуле sys под именами sys.stdin, 
sys.stdout и sys.stderr соответственно. В частности, stdin – это объ-
ект файла, соответствующий входному потоку символов, поступаю-
щему в интерпретатор, stdout – это объект файла, который получает 
вывод, выработанный оператором print, a stderr – это файл, который 
получает сообщения об ошибках. Чаще всего stdin предполагает ввод 
с клавиатуры, a stdout и stderr – вывод текста на экран. 
Методы, описанные в предыдущей главе, могут применяться 
для выполнения ввода/вывода произвольных данных с участием 


29 
пользователя. Например, следующая функция считывает строку вво-
да из стандартного файла ввода: 
def gets(): 
text = " "
while 1: 
с = sys.stdin.read(1) 
text = text + с
if с == '\n' :
break
return text 
Для чтения строки текста из файла stdin может также приме-
няться встроенная функция raw_input(prompt): 
s = raw_input("type something : ")
print "You typed '%s'" % (s,) 
И наконец, прерывания с клавиатуры (для выработки которых 
часто применяется комбинация клавиш ) активизируют ис-
ключение Keyboardlnterrupt, которое может быть перехвачено с ис-
пользованием обработчика исключений. 
 
17. ФУНКЦИИ ДЛЯ РАБОТЫ С АТРИБУТАМИ 
У объектов в языке Python могут быть атрибуты (в терминоло-
гии языка C++ – члены-данные и члены-функции). Следующие две 
программы эквивалентны: 
# первая программа: 
class A: pass
а = А()
a.attr = 1
try: print a.attr
except: print None
del a.attr 
# вторая программа: 
class A: pass


30 
а = А() 
setattr(a, 'attr', 1)
if hasattrfa, 'attr'): getattr(a, 'attr')
else: print None
delattr(a, 'attr') 
18. МОДУЛИ 
По мере того как программы возрастают в размерах, может воз-
никнуть необходимость разбить их на несколько файлов для удобства 
сопровождения. Для этого в языке Python предусмотрена возмож-
ность поместить в файл определения и использовать их в качестве 
модуля, который можно импортировать в другие программы и сцена-
рии. Для создания модуля нужно поместить соответствующие опера-
торы и определения в файл, имеющий такое же имя, как у модуля.
Примечание. Файл должен иметь расширение .ру.
Например: 
# файл : div.py
def divide(a,b): 
q = a/b #Если а и b – целые, то q – целое число 
г = а – q*b 
return (q,r) 
Для того чтобы использовать этот модуль в других программах, 
можно воспользоваться оператором import: 
import div
a, b = div.divide(2305, 29) 
Оператор import создает новое пространство имен, которое со-
держит все объекты, определенные в модуле. Для доступа к этому 
пространству имен можно просто использовать имя модуля в каче-
стве префикса, как в случае div.divide() из предыдущего примера. Для 
выполнения импорта конкретных определений в текущее простран-
ство имен служит оператор from: 
from div import divide
a,b = divide(2305,29) # Префикс div больше не нужен 


31 

Download 1,45 Mb.

Do'stlaringiz bilan baham:
1   ...   10   11   12   13   14   15   16   17   ...   44




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish