Разное, Python, напоминалки

Oct 15, 2013 13:27


1.Работа с вложенными словарями (dict) на Python.

>>> dict = {'Param1':{'Param3':u'Value3', 'Param4':u'Value4'}, 'Param2':u'Value2'};
>>> print dict.get('Param1').get('Param4')
Value4
>>> len (dict)
2

1.1. Взять значение из словаря с одним параметром

>>> dict, ={'Param1':{'Param2':u'Value2'}}
>>> dict
'Param1'

2. Namedtuples.

Вообще эта штука создает класс по шаблону который ей присовывают.
И дальше для каждого элемента оно создает метод с именем - таким же как ключ по которому доступен этот элемент.

>>> from collections import namedtuple
>>> Test_tuple = namedtuple('Test_tuple', 'name1 name2 name3')
>>> ###Здесь мы делаем экземпляр класса Test_tuple который ранее был обьявлен как namedtuple
>>> instance_from_named_tuple1 = Test_tuple(u'value1', u'value2', u'value3')
>>> instance_from_named_tuple1.name1
u'value1'

3. dict.items()
Метод, приводит вид словарь к группированному списку, (и в дальнейшем мы можем обращаться к его элементам через for value,param in dict.items(): ).
То есть :

>>> dict = {'Name1': { 'name3': u'value3', 'name4': {'name7': u'value7', 'name8': u'value8'}}, 'Name2': { 'name5': u'value5', 'name6': u'value6'}}
>>> dict.items()
[('Name2', {'name6': u'value6', 'name5': u'value5'}), ('Name1', {'name4': {'name7': u'value7', 'name8': u'value8'}, 'name3': u'value3'})]
>>> for Name,Value in dict.items():
... print "Name is: %r" % Name
... print "Value is: %r" % Value
...

Name is: 'Name2'
Value is: {'name6': u'value6', 'name5': u'value5'}
Name is: 'Name1'
Value is: {'name4': {'name7': u'value7', 'name8': u'value8'}, 'name3': u'value3'}

4. Функции и return

>>> def run():
... if u'test' == u'test':
... if u'test2' == u'test2':
... print u'First if'
... return True
... if u'test3' == u'test3':
... print u'Second if'
... return True
...
>>> run()
First if
True

5. Множества

>>> a=set([u'123',u'1234'])
>>> a
set([u'1234', u'123'])
>>> b=set([u'123',u'1234',u'12345'])
>>> b
set([u'1234', u'123', u'12345'])
>>> c = a - b
>>> c
set([])
>>> z = b - a
>>> z
set([u'12345'])

python

Previous post Next post
Up