Отправляет email-рассылки с помощью сервиса Sendsay

RFpro.ru: Программирование на Python

  Все выпуски  

RFpro.ru: Программирование на Python


Хостинг портала RFpro.ru:
Московский хостер
Профессиональный ХОСТИНГ на базе Linux x64 и Windows x64

РАССЫЛКИ ПОРТАЛА RFPRO.RU

Лучшие эксперты по данной тематике

Хватов Сергей
Статус: Академик
Рейтинг: 608
∙ повысить рейтинг »
Fox Malder
Статус: 2-й класс
Рейтинг: 17
∙ повысить рейтинг »
Eduard Meilakh
Статус: 2-й класс
Рейтинг: 14
∙ повысить рейтинг »

/ КОМПЬЮТЕРЫ И СОФТ / Программирование / Python

Номер выпуска:30
Дата выхода:20.06.2012, 03:00
Администратор рассылки:Калашников О.А. (Руководитель)
Подписчиков / экспертов:27 / 11
Вопросов / ответов:3 / 3

Консультация # 176256: Здравствуйте, уважаемые эксперты! При программировании графических объектов на питоне в Windows XP, русские слова в окне программы или на кнопках и др, выводятся не корректно, в виде разных закарючек, вопрос: как этого избежать, что надо ввести в коде?...


Консультация # 180230: Здраствуйте, уважаемые эксперты! помогите написать код, не могу разобраться с кодировками Задача: Дана строка, состоящая из РУССКИЙ слов, разделенных пробелами(одним или несколькими). Найти длину самого длинного слова....
Консультация # 184367: Здраствуйте, уважаемые эксперты! Помогите c заданием: создать модуль, аргументом которого есть тьюпл, который представляет вектор разложения неизвест ного числа в цепную дробь. Результат: Словарь из двухкомпонентных тьюплов, в котором каждый тьюпл состоит из числителя p_n и знаменателя q_n n-й аппроксимирующей дроби, : p_n = a_n *...

Консультация # 176256:

Здравствуйте, уважаемые эксперты! При программировании графических объектов на питоне в Windows XP, русские слова в окне программы или на кнопках и др, выводятся не корректно, в виде разных закарючек, вопрос: как этого избежать, что надо ввести в коде?

Дата отправки: 24.01.2010, 15:50
Вопрос задал: WWWorm
Всего ответов: 1
Страница онлайн-консультации »


Консультирует lupus campestris (Академик):

Здравствуйте, WWWorm.
В Python все проблемы с выводом русских букв решаются так:
1) в начале скрипта нужно указать используемую кодировку, например:
# -*- coding: cp1251 -*-
2) при выводе русских букв добавьте u перед текстом, например:
print u"Тест"
Удачи!

Консультировал: lupus campestris (Академик)
Дата отправки: 25.01.2010, 12:06

5
нет комментария
-----
Дата оценки: 25.01.2010, 16:56

Рейтинг ответа:

НЕ одобряю 0 одобряю!

Консультация # 180230:

Здраствуйте, уважаемые эксперты!
помогите написать код, не могу разобраться с кодировками
Задача:
Дана строка, состоящая из РУССКИЙ слов, разделенных пробелами(одним или несколькими).
Найти длину самого длинного слова.

Дата отправки: 07.10.2010, 22:43
Вопрос задал: WWWorm
Всего ответов: 1
Страница онлайн-консультации »


Консультирует Хватов Сергей (Академик):

Здравствуйте, WWWorm.

А что с ними разбираться? Преобразовываете строку в unicode и работаете

Код :
def maxword(str):
    words = unicode(str).split()
    words.sort(cmp=lambda x,y: len(y)-len(x))
    return words[0]

Если cast-преобразование вызовет exception - используйте decode:
Код :
    words = str.decode('windows-1251').split()

Консультировал: Хватов Сергей (Академик)
Дата отправки: 07.10.2010, 23:09
Рейтинг ответа:

НЕ одобряю +1 одобряю!

Консультация # 184367:

Здраствуйте, уважаемые эксперты!
Помогите c заданием:
создать модуль, аргументом которого есть тьюпл, который представляет вектор разложения неизвестного числа в цепную дробь.
Результат: Словарь из двухкомпонентных тьюплов, в котором каждый тьюпл состоит из числителя p_n и знаменателя q_n n-й аппроксимирующей дроби, :
p_n = a_n * p_{n-1} + p_{n-2}, p_{-1}=1, p_{-2}=0
q_n=a_n * q_{n-1} + q_{n-2}, q_{-1}=0, q{-2}=1
В качестве ключа к каждому тьюпла использовать его номер n , начиная с нуля.

Заранее огромное спасибо!!!

Дата отправки: 03.11.2011, 00:29
Вопрос задал: Посетитель - 384525 (Посетитель)
Всего ответов: 1
Страница онлайн-консультации »


Консультирует Хватов Сергей (Академик):

Здравствуйте, Посетитель - 384525!
Вот полный код:

Код :
#!/usr/bin/python
# -*- coding: utf-8 -*-
"""
создать модуль, аргументом которого есть тьюпл,
который представляет вектор разложения неизвестного числа
в цепную дробь.

Результат: Словарь из двухкомпонентных тьюплов,
в котором каждый тьюпл состоит из числителя p_n
и знаменателя q_n n-й аппроксимирующей дроби, :
p_n = a_n * p_{n-1} + p_{n-2}, p_{-1}=1, p_{-2}=0
q_n=a_n * q_{n-1} + q_{n-2}, q_{-1}=0, q{-2}=1

В качестве ключа к каждому тьюпла использовать его номер n,
начиная с нуля.
"""

import sys

def rq184367(args):
    """То, что задано

    Правда это функция, а не модуль

    Возвращает два "лишних" элемента - с ключами -1 и -2  smile  
    """
    res = dict()
    res[-1] = (1,0)
    res[-2] = (0,1)
    n = 0
    for a in args:
        res[n] = (a * res[n-1][0] + res[n-2][0],
                  a * res[n-1][1] + res[n-2][1])
        n += 1
    return res

def main(args):
    """Main script routine - не делает ничего интересного

    Выводит исходные двнные, вызывает функцию и выводит результат.
    Выводит без каких-либо "украшений"
    """
    print args
    ids = rq184367(args)
    print ids 

if __name__ == '__main__':
    """Вызов
    Аргументы передаются через параметры вызова
    """
    main(map(int, sys.argv[1:]))
и результат:
Код :
$ ./main.py 1 2 3 4 5 6 7 8 9
[1, 2, 3, 4, 5, 6, 7, 8, 9]
{0: (1, 1), 1: (3, 2), 2: (10, 7), 3: (43, 30), 4: (225, 157), 5: (1393, 972), 6: (9976, 6961), 7: (81201, 56660), 8: (740785, 516901), -1: (1, 0), -2: (0, 1)}

Версия Python: 2.7.1, ОС: Linux Fedora 15

Консультировал: Хватов Сергей (Академик)
Дата отправки: 04.11.2011, 16:02
Рейтинг ответа:

НЕ одобряю 0 одобряю!


Оценить выпуск | Задать вопрос экспертам

главная страница  |  стать участником  |  получить консультацию
техническая поддержка  |  восстановить логин/пароль

Дорогой читатель!
Команда портала RFPRO.RU благодарит Вас за то, что Вы пользуетесь нашими услугами. Вы только что прочли очередной выпуск рассылки. Мы старались. Пожалуйста, оцените его. Если совет помог Вам, если Вам понравился ответ, Вы можете поблагодарить автора - для этого в каждом ответе есть специальные ссылки. Вы можете оставить отзыв о работе портале. Нам очень важно знать Ваше мнение. Вы можете поближе познакомиться с жизнью портала, посетив наш форум, почитав журнал, который издают наши эксперты. Если у Вас есть желание помочь людям, поделиться своими знаниями, Вы можете зарегистрироваться экспертом. Заходите - у нас интересно!
МЫ РАБОТАЕМ ДЛЯ ВАС!



В избранное