- Как прочитать кириллицу из файла и вывести её?
- Чтение русских символов python
- Что нас ждет в Portal for ArcGIS 10.3
- Решение проблемы с .NET при установке ArcGIS на Windows 8.1 (Windows 10)
- Также может быть интересно
- Новый бесплатный онлайн-курс MOOC «GIS for Climate Action», 25 октября – 6 декабря 2023
- Новые инструменты Deep Learning в ArcGIS 3.1
- 10 самых интересных новшеств в ArcGIS Pro 3.1
- Солнечная энергетика. Возможности ГИС
- Доступные геоданные на Узбекистан
- Тезисы докладов по гидрогеологической тематике с применением ArcGIS
- Эффекты веб-картографии
- Москва и окрестности начала 1930-х
- Python-сообщество
- #1 Апрель 22, 2015 18:33:36
- Чтение из текстового файла русских символов
- #2 Апрель 22, 2015 19:06:54
- Чтение из текстового файла русских символов
- #3 Апрель 22, 2015 19:33:58
- Чтение из текстового файла русских символов
- Python-сообщество
- #1 Апрель 22, 2015 18:33:36
- Чтение из текстового файла русских символов
- #2 Апрель 22, 2015 19:06:54
- Чтение из текстового файла русских символов
- #3 Апрель 22, 2015 19:33:58
- Чтение из текстового файла русских символов
- Работа с файлами
- Открываем, а затем читаем или записываем
- Чтение файла с разной кодировкой
- Добавление в конец и запрет открытия файлов
- Временные файлы
- Именованные временные файлы
- Временные папки
Как прочитать кириллицу из файла и вывести её?
Доброе утро.
Подскажите, плиз, как решить проблему с читабельностью Кириллицы.
Текстовая строка хранится в переменной. Как мне сделать так, чтобы с ней можно было корректно работать?
Буду весьма признателен!
Как записать кириллицу в файл и вывести кириллицу из файла?
Здравствуйте! Удивительное дело, но долго искал информацию о том, как записать кириллицу в DAT.
Как прочитать кириллицу из файла?
И как сделать красивую таблицу, чтобы шрифт не такой огромный был? using System; using.
Как прочитать кириллицу с .dbf файла?
Присоединил к mdb-файлу таблицу dbf, из чужой программы таблица, нужна мне для обработки в моей.
Прочитать кириллицу из файла
Привет. Мне нужно прочитать данные из обычного txt-файла. Числа и латинские символы читаются.
1 2 3 4 5 6 7 8 9 10 11 12 13
# -*- coding: cp1251 -*- import arcpy import os, codecs, ast def Reade_txt (txt_file): f = open(txt_file, "r") line = f.readlines() return line[0] str_osn = Reade_txt("resultat2.txt"); print str_osn
В файле прописана следующая строка:
[Москва, Ставрополь, Астрахань, Волгоград, Санкт-Петербург]
Причем в первой строке пробовал использовать utf-8, также менял кодировки Notepad++, все безрезультатно!
Подскажите в чем недочет, плиз)
Сообщение от Pоман
Сообщение от Aleksey_F
codecs.open() при открытии использовал, причем в разных кодировках, все безрезультатно.
Единственное, что возможно есть взаимосвязь в кодировках, указанных первой строк (# -*- coding: cp1251 -*-), кодировкой самого notepad++ и codecs.open()?
Сообщение от Aleksey_F
это относится только к содержимому файла с исходным кодом (если кириллица есть в самом коде)
Сообщение от Aleksey_F
нужно знать кодировку файла
#!/usr/bin/env python # coding: utf-8 import codecs with codecs.open('file.txt', encoding='utf-8') as fin: line = next(fin) print type(line) print line.strip()
[guest@localhost py]$ ./codec.py abcdабвг [guest@localhost py]$
Я так понимаю, в данном случае кодировку текстового файла. А как его узнать? В свойствах этой информации нет.
Сообщение от Aleksey_F
подбором: в винде сначала ставишь cp1251, потом utf-8, потом cp866, потом koi8-r
в лине можешь сделать hexdump -C и посмотреть коды кириллицы, хотя есть и iconv, в которой тоже подбирать можно
то есть ты уже должен знать кодировку файла, когда открываешь его; это либо знаешь, либо ставишь, какую надо, путём перекодирования через тот же notepad++
Прочитать кириллицу из файла
Не могу понять, почему не читает русские символы. Суть задания: извлечь из текстового файла.
Как прочитать кириллицу из cookie в браузере Chrome
Здравствуйте. Имеется cookie, созданная сервером, которая содержит кириллицу. Я точно знаю, что.
Как прочитать информацию с файла в Arraylist и вывести ее в консоль
Всем привет. Помогите пожалуста решить проблему вывода информации. Можете сказать почему у меня.
прочитать кириллицу
есть строки вида Ïåðåâàëîâ Âàäèì Àíàòîëüåâè÷ как мне привести к нормальному виду, это.
Как в VBA (Excel) прочитать и вывести циклом строчки из текстового файла?
Привет Как в VBA (Excel) прочитать и вывести циклом строчки из текстового файла? Заранее.
Как в функции thr1 прочитать данные из файла в потоке и вывести их в label
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data;.
Прочитать кириллицу на сервере
У меня есть TCP сервер когда передаю на него английские сообщения все норм а когда русские то они.
Чтение русских символов python
Что нас ждет в Portal for ArcGIS 10.3
Решение проблемы с .NET при установке ArcGIS на Windows 8.1 (Windows 10)
Также может быть интересно
Новый бесплатный онлайн-курс MOOC «GIS for Climate Action», 25 октября – 6 декабря 2023
Новые инструменты Deep Learning в ArcGIS 3.1
10 самых интересных новшеств в ArcGIS Pro 3.1
Солнечная энергетика. Возможности ГИС
- ArcGIS
- ArcGIS Enterprise | Server
- ArcGIS Online
- ArcGIS Pro | ArcMap
- ГИС для бизнеса
- Данные в ArcGIS
- Дистанционное зондирование Земли (ДЗЗ)
- Картография и дизайн
- Образование и наука
- Приложения
- Сельское хозяйство
- Техподдержка
Доступные геоданные на Узбекистан
Тезисы докладов по гидрогеологической тематике с применением ArcGIS
Эффекты веб-картографии
Москва и окрестности начала 1930-х
Рубрики
- ArcGIS (174)
- ArcGIS Enterprise | Server (173)
- ArcGIS Online (157)
- ArcGIS Pro | ArcMap (180)
- Геология (14)
- ГИС для бизнеса (44)
- Данные в ArcGIS (101)
- Дистанционное зондирование Земли (ДЗЗ) (50)
- Инженерные коммуникации (28)
- Картография и дизайн (77)
- Образование и наука (85)
- Приложения (153)
- Разработка (56)
- Сельское хозяйство (6)
- События (50)
- Техподдержка (77)
Python-сообщество
- Начало
- » Python для новичков
- » Чтение из текстового файла русских символов
#1 Апрель 22, 2015 18:33:36
Чтение из текстового файла русских символов
Здравствуйте! У меня есть текстовый файл с русскими названиями районов. При чтении python выдает непонятные символы:
А должны быть русские слова. Помогите, что можно сделать, чтобы чтение было корректно!
Отредактировано Magro349 (Апрель 22, 2015 18:34:27)
#2 Апрель 22, 2015 19:06:54
terabayt От: Киев Зарегистрирован: 2011-11-26 Сообщения: 1099 Репутация: 103 Профиль Отправить e-mail
Чтение из текстового файла русских символов
сохранить файл в кодировке которую вы используете в программе
и при чтении файла указывать кодировку
если 3 пайтон, то
open("gile_name", encoding="ваша кодировка")
#3 Апрель 22, 2015 19:33:58
Чтение из текстового файла русских символов
А как вам поможет файл? Отправляю)
Прикреплённый файлы:
ЛенОбласть.txt (539 байт)
Python-сообщество
- Начало
- » Python для новичков
- » Чтение из текстового файла русских символов
#1 Апрель 22, 2015 18:33:36
Чтение из текстового файла русских символов
Здравствуйте! У меня есть текстовый файл с русскими названиями районов. При чтении python выдает непонятные символы:
А должны быть русские слова. Помогите, что можно сделать, чтобы чтение было корректно!
Отредактировано Magro349 (Апрель 22, 2015 18:34:27)
#2 Апрель 22, 2015 19:06:54
terabayt От: Киев Зарегистрирован: 2011-11-26 Сообщения: 1099 Репутация: 103 Профиль Отправить e-mail
Чтение из текстового файла русских символов
сохранить файл в кодировке которую вы используете в программе
и при чтении файла указывать кодировку
если 3 пайтон, то
open("gile_name", encoding="ваша кодировка")
#3 Апрель 22, 2015 19:33:58
Чтение из текстового файла русских символов
А как вам поможет файл? Отправляю)
Прикреплённый файлы:
ЛенОбласть.txt (539 байт)
Работа с файлами
На практике в реальных проектах Data Science часто приходится сталкиваться с чтением датасетов, а также записывать добытую в ходе вычислений информацию в файлы. Сегодня мы расскажем о работе с файлами в Python: чтение и запись, проблема с кодировками, добавление значений в конец файла, временные папки и файлы.
Открываем, а затем читаем или записываем
Предположим, у нас имеется файл, который нужно прочитать в Python. Для этого можно воспользоваться функцией open внутри контекстного менеджера:
with open('file.txt') as f: data = f.read() # содержимое файла
Таким же образом можно записать информацию в файл, указав w в качестве аргумента:
text = 'Hello' with open('file.txt', 'w') as f: f.write(text)
Отметим некоторые особенности данной функции. Во-первых, для чтения файла мы не указывали никаких аргументов кроме имени файла, поскольку по умолчанию уже стоит режим чтения. Мы также не указывали явно, что это именно текстовый файл, а не бинарный, так как это тоже стоит по умолчанию. Для чтения и записи бинарных файлов добавляется b , например, rb или wb .
Во-вторых, мы использовали функцию open в контекстном менеджере. Можно обойтись и без него, но тогда после чтения или записи следует закрыть файл.
f = open('file.txt') f.read() f.close()
На открытие файла Python выделяет память, поэтому, чтобы избежать ее утечки, рекомендуется закрывать файлы.
Чтение файла с разной кодировкой
На многих операционных системах Python в качестве стандарта кодирования использует UTF-8, который также поддерживает кириллицу. Тем не менее, часто можно столкнуться с проблемами неправильной кодировки и получить распространенную ошибку вроде этой:
>>> f = open('somefile.txt', encoding='ascii') >>> f.read() Traceback (most recent call last): File "", line 1, in File "/usr/local/lib/Python3.8/encodings/ascii.py", line 26, in decode return codecs.ascii_decode(input, self.errors)[0] UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 12: ordinal not in range(128))
В примере указана кодировка ASCII, но файл закодирован в другом формате, поэтому и возникает такая ошибка. Решить ее можно тремя способами:
- Указать erorr=replace , который заменит нераспознанные символы знаком ? :
>>> f = open('somefile.txt', encoding='ascii', errors='replace') >>> f.read() 'H?llo py?ho?-school!'
>>> f = open('somefile.txt', encoding='ascii', errors='replace') >>> f.read() 'Hllo pyho-school!'
f = open('somefile.txt', encoding='utf-8') # или cp1251 f = open('somefile.txt', encoding='cp1251')
Добавление в конец и запрет открытия файлов
Как мы уже отметили ранее, для записи текстового файла добавляется аргумент w . Но если вызвать метод write, он перепишет весь файл. Во многих случаях требуется добавить данные в конец файла. Тогда используется a вместо w :
text2 = 'world' with open('file.txt', 'a') as f: f.write(text) # Helloworld
Если файла не существует, то при a и при w он будет создан. Но чтобы не трогать существующие файлы, а создать новый, передается параметр x :
# 'x' не даст возможности открыть файл, так как он существует >>> with open('file.txt', 'x') as f: . f.write(text2) FileExistsError Traceback (most recent call last) FileExistsError: [Errno 17] File exists: 'file.txt' # Поскольку file2.txt не существует, все OK >>> with open('file2.txt', 'x') as f: . f.write(text2)
Временные файлы
Иногда бывает, что требуется создать файл или папку внутри Python-программы, а после ее закрытия их нужно удалить. Тогда пригодится стандартный модуль tempfile. Например, класс TemporaryFile создаст временный файл, который удалится после закрытия. Ниже пример в Python.
>>> from tempfile import TemporaryFile >>> f = TemporaryFile("w+t") >>> f.write("hello") >>> f.seek(0) >>> f.read() 'hello' >>> f.close() # файл уничтожается # либо в контекстном менеджере f.write(text2)
Обратите внимание на 3 вещи. Первое, мы явно передаем «w+t» , чтобы записать как текстовый файл, поскольку по умолчанию стоит «w+b» для бинарных файлов. Второе, метод seek(0) используется для перехода на самый первый символ, поскольку чтение происходит с текущего указателя, а он стоит в конце (после буквы ‘o’ в слове ‘hello’). Поэтому не стоит переживать, что мы можем стереть предыдущую запись:
>>> f.seek(5) # переходим в конец >>> f.read() '' >>> f.write("world") 5 >>> f.seek(0) # переходим в начало >>> f.read() 'helloworld'
Третье, файл TemporaryFile невидим для файловой системы, он используется только внутри Python, поэтому извне будет трудно его найти.
Именованные временные файлы
А вот объекты класса NamedTemporaryFile будут видны файловой системе, и найти месторасположение можно с помощью атрибута name :
>>> from tempfile import NamedTemporaryFile >>> f = NamedTemporaryFile("w+t") >>> f.name '/tmp/tmp60djsgli' >>> f.close()
Как можно заметить, файл называется tmp60djsgli . Для удобства можно явно указать его название и формат:
>>> f = NamedTemporaryFile("w+t", prefix="myfile", suffix=".txt") >>> f.name '/tmp/myfile7mxae0fi.txt'
Временные папки
Кроме временных файлов можно создавать временные папки. Для этого используется класс TemporaryDirectory :
>>> from tempfile import TemporaryDirectory >>> d = TemporaryDirectory() >>> d.name '/tmp/tmp5eadqzz5'
Он также принимает в качестве аргументов prefix и suffix , а также может использоваться внутри контекстного менеджера Python.
В следующей статье поговорим о взаимодействии файловой системы и Python. А получить практические навыки работы с файлами на реальных проектах Data Science вы сможете на наших курсах по Python в лицензированном учебном центре обучения и повышения квалификации IT-специалистов в Москве.