• Как вывести слово с большим количеством символов?

    @zexer
    a = ['qwe', 'q', 'arqw', 'bbbwewe']
    a = sorted(a, key=lambda x: len(x))
    print(a[-1])
    # Out: bbbwewe
    Ответ написан
    Комментировать
  • Какой язык программирования выбрать?

    inoise
    @inoise Куратор тега Карьера в IT
    Solution Architect, AWS Certified, Serverless
    Почему каждый второй считает что его возьмут за ручку и проведут в мир IT?

    1. Вы все-равно решите что-то самостоятельно
    2. Всем остальным в принципе вообще без разницы что вы себе решите
    3. Нету понятия быстрее или медленнее - как получится так получится (мы все имеем разную скорость обучения и условия для этого)
    4. Делайте то что нравится, а что не нравится вы все-равно бросите ибо от вас толку в таком раскладе будет примерно нисколько
    Ответ написан
    7 комментариев
  • При работе VK_API + proxy ошибка bad password при верном пароле?

    Да.
    Ответ написан
    Комментировать
  • Как ищут участников в opensource-проекты?

    search
    @search
    мама говорит что я особенный
    Для того чтоб привлечь контрибуторв нужно для начала привлечь пользователей. Для этого:

    1. Дайте внятное описание того какую задачу решает проект. Пока по описанию проекта видно как он создан, но не что делает. Желательно уложить это описание в одно-два предложения, которые идут сразу после заголовка проекта
    2. Это UI проект? Где ссылка на демо?
    3. Вас в комментариях уже спросили, почему он называется my_...? Сейчас проект выглядет как поделка для личного использования
    4. Необходимы инструкции по установке. Желательно в виде npm install project_name, а не в виде нескольких абзацев текста
    5. Прогоните описание хотя бы через grammarly. Сейчас там слишком много "русского английского"

    Ответ написан
    4 комментария
  • Нужно ли стажеру/джуну знать и/или использовать в Python аннотации типов?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    Пятнадцать лет пишу на Python. Писал на нём очень масштабные проекты. При этом никогда не использовал и не собираюсь использовать аннотации типов. Считаю, что если хочется указывать типы, стоит использовать статически типизированный язык.
    Ответ написан
  • Как найти самое короткое слово в словаре в python?

    @PavelMos
    Почитай про питоновские словари.
    Перебрать ключи - просто в обходе, например, for x in dict1..
    Перебрать значения - с помощью встроенной функции, for x in dict1.values()
    Найти минимум из ключей - просто min(dict1), т.е. функция будет искать среди ключей, а не значений. Соответственно, потом нужно взять значение по имени ключа.
    Всё вместе:
    min1=[min(dict1)] #ключ с минимальным значением
    print (min1, dict1[min1]) # распечатать ключ  и значение)
    Ответ написан
    5 комментариев
  • Как полностью вывести большую таблицу в Jupyter notebook?

    @statz
    Для колонок:
    pd.set_option('display.max_columns', None)
    Для строк:
    pd.set_option('display.max_rows', None)
    Ответ написан
    Комментировать
  • Как можно укоротить код python?

    ramzis
    @ramzis
    FullStackOverflow
    Можно сделать так

    def view():
        pass
    def viewAll():
        pass
    def num():
        pass
    
    def command_check(command):
        com = {'view':view,'viewAll':viewAll,'num':num}
        try:
            com[command]()
        except:
            print("Ошибка. Несуществующая команда.")
        
    command_check('view')
    Ответ написан
    1 комментарий
  • Selenium, Python, как кликнуть на popup?

    @RobbyWhite
    Если я не ошибаюсь элемент (frame) должен быть в фокусе. Попробуйте воспользоваться driver.switch_to_frame("frameName") Пункт 3.4 объясняет это более подробно. https://selenium-python.readthedocs.io/navigating.html
    Ответ написан
    Комментировать
  • Как парсить строки с помощью Python?

    ScriptKiddo
    @ScriptKiddo
    Для начала вам нужно нормализовать адреса в базе. Сделать это можно, например, с помощью геокодера от Яндекса
    /geocoder

    Например, ищем "Москва, Тверская 6"

    https://geocode-maps.yandex.ru/1.x/?apikey=%apikey...

    Ответ

    {
      "response": {
        "GeoObjectCollection": {
          "metaDataProperty": {
            "GeocoderResponseMetaData": {
              "request": "Москва,Тверская 6",
              "results": "10",
              "found": "1"
            }
          },
          "featureMember": [
            {
              "GeoObject": {
                "metaDataProperty": {
                  "GeocoderMetaData": {
                    "precision": "exact",
                    "text": "Россия, Москва, Тверская улица, 6с1",
                    "kind": "house",
                    "Address": {
                      "country_code": "RU",
                      "formatted": "Россия, Москва, Тверская улица, 6с1",
                      "postal_code": "125009",
                      "Components": [
                        {
                          "kind": "country",
                          "name": "Россия"
                        },
                        {
                          "kind": "province",
                          "name": "Центральный федеральный округ"
                        },
                        {
                          "kind": "province",
                          "name": "Москва"
                        },
                        {
                          "kind": "locality",
                          "name": "Москва"
                        },
                        {
                          "kind": "street",
                          "name": "Тверская улица"
                        },
                        {
                          "kind": "house",
                          "name": "6с1"
                        }
                      ]
                    },
                    "AddressDetails": {
                      "Country": {
                        "AddressLine": "Россия, Москва, Тверская улица, 6с1",
                        "CountryNameCode": "RU",
                        "CountryName": "Россия",
                        "AdministrativeArea": {
                          "AdministrativeAreaName": "Москва",
                          "Locality": {
                            "LocalityName": "Москва",
                            "Thoroughfare": {
                              "ThoroughfareName": "Тверская улица",
                              "Premise": {
                                "PremiseNumber": "6с1",
                                "PostalCode": {
                                  "PostalCodeNumber": "125009"
                                }
                              }
                            }
                          }
                        }
                      }
                    }
                  }
                },
                "name": "Тверская улица, 6с1",
                "description": "Москва, Россия",
                "boundedBy": {
                  "Envelope": {
                    "lowerCorner": "37.607242 55.757926",
                    "upperCorner": "37.615452 55.762556"
                  }
                },
                "Point": {
                  "pos": "37.611347 55.760241"
                }
              }
            }
          ]
        }
      }
    }



    После чего загружаете в базу в нужной схеме и ищете по нормализованным данным

    Ответ по адресу из вопроса
    {
      "response": {
        "GeoObjectCollection": {
          "metaDataProperty": {
            "GeocoderResponseMetaData": {
              "request": "Киевская обл. , г. Киев, ул. Крещатик, дом 50, кв. 8",
              "results": "10",
              "found": "2"
            }
          },
          "featureMember": [
            {
              "GeoObject": {
                "metaDataProperty": {
                  "GeocoderMetaData": {
                    "precision": "exact",
                    "text": "Украина, Киев, улица Крещатик, 50",
                    "kind": "house",
                    "Address": {
                      "country_code": "UA",
                      "formatted": "Украина, Киев, улица Крещатик, 50",
                      "Components": [
                        {
                          "kind": "country",
                          "name": "Украина"
                        },
                        {
                          "kind": "province",
                          "name": "Киев"
                        },
                        {
                          "kind": "locality",
                          "name": "Киев"
                        },
                        {
                          "kind": "street",
                          "name": "улица Крещатик"
                        },
                        {
                          "kind": "house",
                          "name": "50"
                        }
                      ]
                    },
                    "AddressDetails": {
                      "Country": {
                        "AddressLine": "Украина, Киев, улица Крещатик, 50",
                        "CountryNameCode": "UA",
                        "CountryName": "Украина",
                        "AdministrativeArea": {
                          "AdministrativeAreaName": "Киев",
                          "Locality": {
                            "LocalityName": "Киев",
                            "Thoroughfare": {
                              "ThoroughfareName": "улица Крещатик",
                              "Premise": {
                                "PremiseNumber": "50"
                              }
                            }
                          }
                        }
                      }
                    }
                  }
                },
                "name": "улица Крещатик, 50",
                "description": "Киев, Украина",
                "boundedBy": {
                  "Envelope": {
                    "lowerCorner": "30.516022 50.440632",
                    "upperCorner": "30.524232 50.445875"
                  }
                },
                "Point": {
                  "pos": "30.520127 50.443254"
                }
              }
            },
            {
              "GeoObject": {
                "metaDataProperty": {
                  "GeocoderMetaData": {
                    "precision": "other",
                    "text": "Украина, Киевская область",
                    "kind": "province",
                    "Address": {
                      "country_code": "UA",
                      "formatted": "Украина, Киевская область",
                      "Components": [
                        {
                          "kind": "country",
                          "name": "Украина"
                        },
                        {
                          "kind": "province",
                          "name": "Киевская область"
                        }
                      ]
                    },
                    "AddressDetails": {
                      "Country": {
                        "AddressLine": "Украина, Киевская область",
                        "CountryNameCode": "UA",
                        "CountryName": "Украина",
                        "AdministrativeArea": {
                          "AdministrativeAreaName": "Киевская область"
                        }
                      }
                    }
                  }
                },
                "name": "Киевская область",
                "description": "Украина",
                "boundedBy": {
                  "Envelope": {
                    "lowerCorner": "29.266411 49.179114",
                    "upperCorner": "32.161466 51.554013"
                  }
                },
                "Point": {
                  "pos": "30.456149 50.29807"
                }
              }
            }
          ]
        }
      }
    }


    UPD: добавил ответ по адресу из вопроса.
    Ответ написан
    2 комментария
  • Как сравнить слово из БД и слово из переменной?

    shabelski89
    @shabelski89
    engineer
    Допустим ты прочитаешь основы по python и sql.
    И бац, делаешь запрос в БД и в запросе указываешь like твоя переменная.
    Ответ написан
    Комментировать
  • Ошибка кодировок python?

    shabelski89
    @shabelski89
    engineer
    with open('mylist.json',"w", encoding="utf-8") as file:
        json.dump(out, file, ensure_ascii=False)
    Ответ написан
    3 комментария
  • Проблемы с кодом на Python?

    kgb_zor
    @kgb_zor
    I need your traceback.
    guess = int(input("Твой вариант?"))
    Ответ написан
    Комментировать
  • Проблемы с кодом на Python?

    SoreMix
    @SoreMix Куратор тега Python
    yellow
    TypeError: '<' not supported between instances of 'str' and 'int

    Ошибка типов: знак "<" не поддерживается между "строка" и "число"

    guess у вас строка
    secret - число
    Ответ написан
    Комментировать
  • Как исправить ошибку Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools"?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    Microsoft Visual C++ 14.0 и Microsoft Visual C++ 14.0 Redistributable - это не одно и то же. Первое - это средства разработки, включающие в себя компилятор, который как раз и нужен для установки пакета. Второе - только набор библиотек для работы приложений скомпилированных с помощью Visual C++.

    Microsoft Visual C++ Build Tools можно сказать здесь.
    Ответ написан
    1 комментарий
  • Какая книга по Python раскрывает мелочи и особенности языка?

    К вершинам мастерства,
    Секреты Python, 59 рекомендаций по написанию ефективного кода.
    Ст. библиотека Python, справочник с примерами ( после прочтения https://docs.python.org/3/library/
    Чистый python, тонкости программирования от профи ( ток лучше читать на англиском, даже название не правильно перевели )
    Python - книга рецептов
    Ответ написан
    Комментировать
  • Cannot import name 'Bp'?

    class Bb

    cannot import name 'Bp'


    Bb != Bp
    Ответ написан
    1 комментарий
  • Не могу понять как работает код (tuple, dictionary, lambda)?

    [a<b] неявно приводится к типу int. True - 1, False - 0.
    В первом случае всё просто - берётся либо 0, либо 1 элемент.
    Во втором случае [a<b] возвращает либо True, либо False, и из словаря возвращается значение по ключу.
    В третьем есть кортеж из 2 лямбда функций. 1-ая возвращает b, 2-ая - a, и нужная функция выбирается как в первом случае
    Ответ написан
    1 комментарий
  • Как сделать авторизацию на сайт при парсинге через requests?

    @Realmixer
    Full stack Python (Django) web-developer
    Как правило, любой сайт при авторизации устанавливает в браузер куки. Браузер при каждом запросе сообщает эти куки на сайт, благодаря чему тот "понимает" какой пользователь совершил запрос. Соответственно тебе нужно передавать эти куки при каждом запросе так же как браузер. Вряд ли в Дневнике используется что-то хитрее.

    Начать можно с того, что залогиниться на сайте и собрать все куки для домена сайта. В Хроме это делается так: F12 — Application — Storage — Cookies. Захадрдкодь найденные куки:
    cookies = {
        '_ym_isad': '...',
        '_gid': '...',
        '_ym_uid': '...',
        '_ga': '...',
        '_ym_d': '...',
        '_gat': '...',
        '_gat_main': '...',
    }
    r = requests.get(url, cookies=cookies)

    Если это сработает, тогда думай сценарием авторизации из своего скрипта.
    Ответ написан
    Комментировать
  • Как сделать авторизацию на сайт при парсинге через requests?

    На коленке состряпал, вроде работает:
    import requests
    
    url = "https://login.dnevnik.ru/login/esia/karelia"
    #url на свой регион заменишь, там когда на сайте авторизуешься он отображается
    
    login = 'логин'
    password = 'пароль'
    session = requests.Session()
    get_cookies = session.get(url)
    captcha_id = get_cookies.cookies['dnevnik_sst'].split('|')[0]
    print(captcha_id)
    
    data = {
    	'exceededAttempts': False,
    	'login': login,
    	'password': password,
    	'Captcha.Id': captcha_id
    }
    
    response = session.post(url, data)

    Для всех операций используешь объект session, в нём будут сохранятся куки, и потом можно обращаться к страницам, как будто ты авторизованный, например так:
    my_class_html = session.get('https://schools.dnevnik.ru/class.aspx')
    
    schedule_html = session.get('https://schools.dnevnik.ru/homework.aspx')
    Ответ написан
    2 комментария