Форум программистов, компьютерный форум, киберфорум
Наши страницы
Python
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
Alxndr
0 / 0 / 0
Регистрация: 06.07.2016
Сообщений: 1
1

Адресная книга на python, правильно ли?

06.07.2016, 11:34. Просмотров 566. Ответов 1
Метки нет (Все метки)

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
class AB:
    ab = {}
    def __init__(self, key, value):
        self.key = key
        self.value = value
        AB.ab[key] = value
 
    @staticmethod
    def add():
        name = input('Введите имя: ')
        address = input('Введите адрес: ')
        obj = AB(name,address)
        print("Элемент добавлен")
 
    @staticmethod
    def delete():
        name = input('Введите имя: ')
        del AB.ab[name]
 
    @staticmethod
    def printOut():
        for i in AB.ab.items():
            print(i)
 
    @staticmethod
    def change():
       name = input('Введите имя: ')
       AB.ab[name] = input("Новое значение :")
 
    @staticmethod
    def view(name):
        print(AB.ab[name])
 
 
 
 
    @staticmethod
    def menu():
        x = -1
        while x != '6':
            print('''1. Вывод - 1\n2. Добавить - 2 \n3. Удалить - 3 \n4. Задать ключ - 4 \n5. Посотреть по ключу - 5 \n6. Выход - 6 ''')
            x = input('Введите значение : ')
            if x == '1':
                AB.printOut()
            elif x =='2':
                AB.add()
            elif x == '3':
                AB.delete()
            elif x == '4':
                AB.change()
            elif x == '5':
                a.key=input()
                AB.view(a.key)
            elif x == '6':
                break
 
a = AB('Alex','street1')
b = AB('Nadezhda','street2')
AB.menu()
Или все через статические методы делать не рационально?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.07.2016, 11:34
Ответы с готовыми решениями:

книга python 3
Всем привет, подскажите нормальный учебник для учения python3. Сейчас читаю...

Книга по python
Посоветуйте книгу по python3, где все было-бы доступно описано, было-бы...

Как называется самая первая книга Марка Лутза по Python?
Здравствуйте, скажите как называется первая книга Марка Лутза по пайтон. Меня...

Python 3.2: как правильно обращаться с типом Decimal
Новичок в питоне. У меня версия 3.2. Не могу разобраться, почему вот так...

Как правильно считать данные в словарь (dict) в Python 3?
Когда хочу воспользоваться функцией .keys(), то мне выдает целую строку: ...

1
AndrewNoskov
1 / 1 / 4
Регистрация: 16.11.2015
Сообщений: 20
06.07.2016, 12:10 2
В Python 3 классы стали классами нового стиля, поэтому @staticmethod нужно использовать лишь в том случае, когда ты собираешься вызывать метод класса с помощью экземпляра, не передавая сам экземпляр методу(как это делается обычно).
Пример:
Python
1
2
3
4
5
6
7
8
9
class AddressBook:
    def printAddressBook():
        pass
    ...
    ...
 
...
...
AddressBook.printAddressBook()
иначе с помощью экземпляра:

Python
1
2
3
4
5
6
7
8
9
10
11
class AddressBook:
    @staticmethod
    def printAddressBook():
        pass
    ...
    ...
 
...
...
base1 = AddressBook()
base1.printAddressBook()
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.07.2016, 12:10

Адресная книга
В Виндах у почтовых программ, адрессная книга должна храниться в каком-то...

Адресная книга
AlphaSkin, RichView.

Адресная книга
Доброе утро. Итак, сначала ситуация, в кратце: Есть Webshere Portal 6.0.1 и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru