JavaFX: изменить видимость курсора, но в том, как курсор взаимодействует & ldquo; on-hover & rdquo;

Ниже приведены некоторые минимальные полные примеры того, как читать CSV-файлы и как писать файлы CSV с помощью Python.

Python 2 + 3: чтение файла CSV

Pure Python

# -*- coding: utf-8 -*-

import csv
import sys

# Define data
data = [(1, "A towel,", 1.0),
        (42, " it says, ", 2.0),
        (1337, "is about the most ", -1),
        (0, "massively useful thing ", 123),
        (-2, "an interstellar hitchhiker can have.", 3)]

# Write CSV file
kwargs = {'newline': ''}
mode = 'w'
if sys.version_info < (3, 0):
    kwargs.pop('newline', None)
    mode = 'wb'

with open('test.csv', mode, **kwargs) as fp:
    writer = csv.writer(fp, delimiter=str(','))
    # writer.writerow(["your", "header", "foo"])  # write header
    writer.writerows(data)

# Read CSV file
kwargs = {'newline': ''}
mode = 'r'
if sys.version_info < (3, 0):
    kwargs.pop('newline', None)
    mode = 'rb'
with open('test.csv', mode, **kwargs) as fp:
    reader = csv.reader(fp, delimiter=',', quotechar='"')
    # next(reader, None)  # skip the headers
    data_read = [row for row in reader]

print(data_read)

После этого содержимое data_read является

[['1', 'A towel,', '1.0'],
 ['42', ' it says, ', '2.0'],
 ['1337', 'is about the most ', '-1'],
 ['0', 'massively useful thing ', '123'],
 ['-2', 'an interstellar hitchhiker can have.', '3']]

Unicode и Python 2.X

Если вы хотите написать Unicode, у вас есть для установки unicodecsv. Не открывайте файл с помощью codecs.open, а просто с помощью open.

  • Как записать данные в формат csv в виде строки (не файла)?
  • Как я могу использовать io.StringIO () с модулем csv? : Это интересно, если вы хотите работать с CSV на лету с помощью Flask, не сохраняя при этом CSV на сервер.
  • mpu

    Посмотрите мой пакет утилиты mpu для супер простого и легко запоминающегося:

    import mpu.io
    data = mpu.io.read('example.csv', delimiter=',', quotechar='"', skiprows=None)
    mpu.io.write('example.csv', data)
    

    Pandas

    import pandas as pd
    
    # Read the CSV into a pandas data frame (df)
    #   With a df you can do many things
    #   most important: visualize data with Seaborn
    df = pd.read_csv('myfile.csv', sep=',')
    print(df)
    
    # Or export it in many ways, e.g. a list of tuples
    tuples = [tuple(x) for x in df.values]
    
    # or export it as a list of dicts
    dicts = df.to_dict().values()
    

    Для получения дополнительной информации см. read_csv docs . Обратите внимание, что pandas автоматически появляется, если есть строка заголовка, но вы также можете установить ее вручную.

    Если вы не слышали о Seaborn , я рекомендую посмотреть на нем.

    Другое

    Чтение CSV-файлов поддерживается рядом других библиотек, например:

    Создан файл CSV

    1,"A towel,",1.0
    42," it says, ",2.0
    1337,is about the most ,-1
    0,massively useful thing ,123
    -2,an interstellar hitchhiker can have.,3
    

    Общие окончания файлов

    .csv

    Работа с данными

    После прочтения файла CSV в списке кортежей / диктов или в кадре данных Pandas он просто работает с такими типами данные. Ничего особенного в CSV.

    Альтернативы

    Для вашего приложения может быть важно следующее:

    • Поддержка другими Языки программирования
    • Производительность чтения / записи
    • Компактность (размер файла)

    См. также: Сравнение форматов сериализации данных

    Если вы скорее ищете способ создания файлов конфигурации, вы можете прочитать мою короткую статью Файлы конфигурации в Python

    0
    задан Terry Dorsey 27 March 2019 в 03:06
    поделиться