Уведомления

Группа в Telegram: @pythonsu

#1 Июль 23, 2013 19:58:11

Isaev
Зарегистрирован: 2013-04-14
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

Использование подключаемых модулей в версиях 3.*

Как в версии 3.* версии использовать функции из подключаемых модулей?

простой пример

import string
str="Hallo World Hallo World Hallo World"
print(string.count(str,'allo'))

получаю ошибку: AttributeError: ‘module’ object has no attribute ‘count’

Офлайн

#2 Июль 23, 2013 20:02:25

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Использование подключаемых модулей в версиях 3.*

1. str=
переопределять стандартную функцию не есть гуд
2. string.count(str,'allo')
Зачем?

s="Hallo World Hallo World Hallo World"
print (s.count("allo"))



Офлайн

#3 Июль 23, 2013 20:05:14

Isaev
Зарегистрирован: 2013-04-14
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

Использование подключаемых модулей в версиях 3.*

FishHook
переопределять стандартную функцию не есть гуд
это случайный пример из головы, а так да конечно )
FishHook
Зачем?
проблема совместимости… раньше работало вроде, может была версия 2.* на это грешу
теперь думаю как адаптироваться к новой

Офлайн

#4 Июль 23, 2013 20:08:48

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Использование подключаемых модулей в версиях 3.*

в третьем питоне вроде вообще нет count у string
http://docs.python.org/3.1/library/string.html



Офлайн

#5 Июль 23, 2013 20:17:17

Isaev
Зарегистрирован: 2013-04-14
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

Использование подключаемых модулей в версиях 3.*

да вот нагуглил тоже у забугорных друзей
“string functions were removed in py3k and you have to use now str methods”

я может излишне заморачиваюсь с типами, но не понимаю как это перевести
было так:

a1="""123
234
345"""
a2=string.join(a1.split(), "")
print a2

но если я делаю
a3=a1.split();
то это больше не строка, а list, потому я не могу делать
a2=a3.join("");

как быть?

Офлайн

#6 Июль 23, 2013 20:21:22

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Использование подключаемых модулей в версиях 3.*

a2 = "".join(a1.split())



Офлайн

#7 Июль 23, 2013 20:26:07

Isaev
Зарегистрирован: 2013-04-14
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

Использование подключаемых модулей в версиях 3.*

FishHook
благодарю… как обычно, всё просто, когда знаешь как!

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version