Инструменты пользователя

Инструменты сайта


develop:pyton:practics

Это старая версия документа!


Practics

Seller

:!: Работа с csv /pandas

Штатный вариант
Возвращает каждую строку в формате List

import csv
 
with open('docs/orders_mini.csv', newline='') as csvfile:
  for row in _reader:
    print(type(row))
    print(row)

Вариант с pandas
Библиотека конечно матерая, но есть увеличенный порог входа, там все свое, куча собственный типов/форматов данных, во всем этом надо какое то время еще разбираться

import pandas as pd
 
data = pd.read_csv("docs/orders_mini2.csv", delimiter=';')
 
  # собственный формат dataFrame
print(type(data))
print(data)
 
# кортеж со строками, тоже матерый формат
for label, content in data.items():
    print(f'label: {label}')
    print(f'content: {content}')
 
  # так столбцы, в виде строк
for content in data.keys():
  print(f'content: {content}')
 
# и еще очень много всяких функций/вариантов
:!: Работа со словарями
  # Сортировка по значению
dict_result_successed = dict(sorted( dict_counted_acticles_successed.items(), key=lambda item: item[1], reverse=True))
 
 
  # Сумма значений (значение понятно int)
sum_successed = sum([ item for item in dict_counted_acticles_successed.values() ], 0)
 
 
  # Имея список с повторяющимися одиночными значениями, генерируем словарь с уникальными значениями и числом в value, начальное значение 0, далее будем считать
dict_counted_acticles = { key: value for (key, value) in (zip(set(ls_only_article), itertools.repeat(0))) }
:!: Работа со списками
  # В данном случае надо было из большого списка сформировать список с одиночными значениями плюс оставив только часть строки, вырезается регуляркой
reLabelSize = re.compile(r"-[\d]{1,2}$")
 
  # Делаем список доставленных, но только артикулы, без размера
lsOnlyArticle = [ reLabelSize.sub("", item["Артикул"]) for item in lsSourceBigDicts ]
:!:
 
:!:
 
:!:
 
develop/pyton/practics.1702825357.txt.gz · Последнее изменение: 2023/12/17 15:02 — admin