Если вы хотите использовать командную строку (и не создаете целую программу для выполнения работы), вы хотели бы использовать строки , проект, над которым я работаю: это интерфейс командной строки для табличных данных, но также библиотека Python для использования в ваших программах. С помощью интерфейса командной строки вы можете печатать любые данные в CSV, XLS, XLSX, HTML или любом другом табличном формате, поддерживаемом библиотекой, с помощью простой команды:
rows print myfile.csv
Если myfile.csv
это так:
state,city,inhabitants,area
RJ,Angra dos Reis,169511,825.09
RJ,Aperibé,10213,94.64
RJ,Araruama,112008,638.02
RJ,Areal,11423,110.92
RJ,Armação dos Búzios,27560,70.28
Затем строки будут печатать содержимое красивым способом, например так:
+-------+-------------------------------+-------------+---------+
| state | city | inhabitants | area |
+-------+-------------------------------+-------------+---------+
| RJ | Angra dos Reis | 169511 | 825.09 |
| RJ | Aperibé | 10213 | 94.64 |
| RJ | Araruama | 112008 | 638.02 |
| RJ | Areal | 11423 | 110.92 |
| RJ | Armação dos Búzios | 27560 | 70.28 |
+-------+-------------------------------+-------------+---------+
Установка
Если вы являетесь разработчиком Python и уже pip
установили на свой компьютер, просто запустите внутри virtualenv или с помощью sudo
:
pip install rows
Если вы используете Debian:
sudo apt-get install rows
Другие интересные функции
Преобразование форматов
Вы можете конвертировать между любыми поддерживаемыми форматами:
rows convert myfile.xlsx myfile.csv
Запросы
Да, вы можете использовать SQL в файл CSV:
$ rows query 'SELECT city, area FROM table1 WHERE inhabitants > 100000' myfile.csv
+----------------+--------+
| city | area |
+----------------+--------+
| Angra dos Reis | 825.09 |
| Araruama | 638.02 |
+----------------+--------+
Преобразование вывода запроса в файл вместо stdout также возможно с помощью --output
параметра.
Как библиотека Python
Вы также можете использовать свои программы на Python:
import rows
table = rows.import_from_csv('myfile.csv')
rows.export_to_txt(table, 'myfile.txt')
# `myfile.txt` will have same content as `rows print` output
Надеюсь, тебе понравится!