Задать вопрос
  • Как лучше читать файл?

    @alekssamos
    Программист любитель
    Если файл большой, например, CSV 4 ГБ, тогда нужно обрабатывать по одной строке за раз.
    То есть примерно так:
    def main():
        original_file = "pp-complete.csv"
        with open(original_file, encoding="UTF-8", newline="") as of:
            reader = csv.reader(of)
            for row in reader:
                Transaction_ID, Price, Date_of_Transfer, Postcode, Property_Type, Old_or_New, Duration,
                            PAON, SAON, Street, Locality, Town_or_City,
                            District, County, PPD_Category_Type, Record_Status = row
    # что-то делаешь дальше именно с этой с одной строкой
    # и идёшь дальше
    Ответ написан
    Комментировать
  • Как найти и заменить текст в файлах в Linux?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    find website.com -exec sed -i 's/mail1@gmail.com/mail2@gmail.com/' {} \;
    Ответ написан
    Комментировать
  • Как сделать, чтобы когда в группе появилась запись она автоматически отправлялась в беседу в вк?

    senku1435
    @senku1435
    py aiogram develop, c# mid
    import vk_api
    from vk_api.bot_longpoll import VkBotLongPoll, VkBotEventType
    import random
    
    def send(user_id, attachment):
        random_id = random.randint(-2147483648, +2147483648)
        vk.messages.send(
            peer_id=user_id,
            random_id=random_id,
            message="Новый пост в группе!",
            attachment=attachment
            )
    #Сам код main
    vk_session_group = vk_api.VkApi(token='ТОКЕН') # Токен группы
    vk = vk_session_group.get_api()
    longpoll_group = VkBotLongPoll(vk_session_group, 12345)  # ID группы
    
    user_id = 12345678  # Кому отправлять репост
    
    for event in longpoll_group.listen():
        if event.type == VkBotEventType.WALL_POST_NEW:
            id_ = event.object['id']
            owner_id_ = event.group_id
            wall_id = f'wall-{owner_id_}_{id_}'
            print('Новый пост! - ', wall_id)
            attachment = wall_id
            send(user_id, attachment)

    Прежде чем задавать вопрос пожалуйства воспользуйтесь гуглом!
    Ответ написан
    2 комментария
  • Как писать правильнее?

    @antares4045
    первый вариант читабелнее (в терминальных случаях является безальтернативно верным)
    но он порождает новую переменную в контексте вызова, что сказывается как на времени так и на памяти: такой кейс вам приведу

    import datetime
    def fun(a,b):
        return a + b
    def fun2(arg1=1, arg2=2):
        return arg1 + arg2
    print("вариант 1")
    for j in range(10):
        start = datetime.datetime.now()
        for i in range(10000):
            a=fun(5, 6)
            fun2(arg2=a)
        end = datetime.datetime.now()
        print(end - start)
    print("===================")
    print("вариант 2")
    for j in range(10):
        start = datetime.datetime.now()
        for i in range(10000):
            fun2(arg2=fun(5, 6))
        end = datetime.datetime.now()
        print(end - start)

    вывод:
    вариант 1
    0:00:00.006048
    0:00:00.002219
    0:00:00.001937
    0:00:00.001955
    0:00:00.001893
    0:00:00.001886
    0:00:00.001879
    0:00:00.001891
    0:00:00.001895
    0:00:00.001887
    ===================
    вариант 2
    0:00:00.001541
    0:00:00.001551
    0:00:00.001551
    0:00:00.001546
    0:00:00.001564
    0:00:00.001535
    0:00:00.001537
    0:00:00.001546
    0:00:00.001516
    0:00:00.001704


    имеем в среднем раза в полтора разницу по скорости

    что вам важнее в данный момент сильно зависит от конкретной задачи
    Ответ написан
    1 комментарий
  • Как исправить ошибку в присвоении переменной?

    Vindicar
    @Vindicar
    RTFM!
    for code in store:
    Для словаря цикл for перебирает ключи, т.е. '12345', '23456'...
    А ты как будто что-то другое перебираешь, типа
    for item in store[code]:
        print(item['price'], 'x', item['quantity'])
    Ответ написан
    1 комментарий
  • Как исправить ошибку в присвоении переменной?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    в строке
    for code in store:
    вы перебираете ключи словаря.
    затем, получив очередной ключ в переменную code, вы в строке
    price_1 = code['price']
    обращаетесь к тому, что находится в code, и пытаетесь найти элемент его по индексу "price".
    Но в code находится ключ, и он - строка. Об этом вам и говорит ошибка - так со строкой работать нельзя.

    Для того, чтобы правильно всё сделать, можно попробовать так:
    for name in goods:
        code = goods[name]
        print('Название товара:', name, '    Его код:', code)
        for code in store:
            price_1 = store[code][0]['price']
            quantity_1 = store[code][0]['quantity']
            summ = price_1 * quantity_1
            print('полная стоимость товара:', summ)

    или так:
    for name in goods:
        code = goods[name]
        print('Название товара:', name, '    Его код:', code)
        for code, value in store.items():
            price_1 = value[0]['price']
            quantity_1 = value[0]['quantity']
            summ = price_1 * quantity_1
            print('полная стоимость товара:', summ)
    Ответ написан
    Комментировать
  • Работа с CSV-файлами в Python?

    @serhiops
    Python/JavaScript/C++
    Чтобы
    понять, как это все работает
    нужно смотреть документацию/гайды. Абсолютно ничего сложного в этом нет.
    Чтение
    Запись
    Если будет возникать конкретная ошибка, то уже пиши в коментариях.
    Ответ написан
    1 комментарий
  • Нельзя установить сторонний APK?

    CityCat4
    @CityCat4
    //COPY01 EXEC PGM=IEBGENER
    Написано ж предельно понятно - Большой Демократичный Гугл демократично попросил тотал убрать фичу установки APK, и тотал сказал "Слушаю и повинуюсь, белый господин" :)
    Либо откатить тотал назад - на 4pda однозначно есть все версии.
    Либо перестать им пользоваться для установки - я вот даже и не знал, что для установки APK со стороны нужны какие-то программы - тап в проводнике и все поехало...
    Ответ написан
    Комментировать
  • Счетчик работает, а команды COGS перестали. Что делать?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Счетчик работает, а команды COGS перестали. Что делать?

    Честно признаться, что взяли ношу не по плечу.
    Открыть учебники, читать документацию, разбираться как работает код, дебажить его, и главное - перестать попрошайничать.
    Ответ написан
    Комментировать
  • Какая Linux без проблем встанет вместе с Windows 10(на один диск)?

    Если Вы ставите в первый раз, то ставьте Ubuntu и все дистрибутивы основанные на нем - elementaryOS, linuxMint и т.д. Более дружелюбного дистрибутива не найти.
    Ответ написан
    Комментировать
  • Почему выдает ошибку при парсинге "TypeError: find() takes no keyword arguments"? Как исправить это?

    seven5674
    @seven5674
    Старый я уже что бы что-то в себе менять
    roomlist у тебя <class 'bs4.element.Tag'>
    Читай доки

    Измененный пример

    import requests
    from bs4 import BeautifulSoup
    headers = {
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:100.0) Gecko/20100101 Firefox/100.0"}
    url = "https://hamptonvolgograd.ru/nomera/"
    response = requests.get(url, headers=headers)
    soup = BeautifulSoup(response.text, "html.parser")
    roomlist = soup.findAll("span", class_="h1")
    
    for hostel in roomlist:
        print(hostel.text.strip())

    вывод
    Номер с двуспальной кроватью (номер первой категории)
    Номер с двумя кроватями (номер первой категории)
    Номер с двуспальной кроватью и диваном-кроватью (Джуниор сюит)
    Номер для людей с ограниченными возможностями (номер первой категории)

    Ответ написан
    2 комментария
  • Как читать лицензионные DVD в Ubuntu?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    https://itsfoss.com/play-dvd-ubuntu-1310/
    Говорят что так, сам не пробовал
    Ответ написан
    3 комментария