リスト


In [1]:
['spam', 'egg', 0.5]


Out[1]:
['spam', 'egg', 0.5]

In [2]:
['spam', 'ham'] + ['egg']


Out[2]:
['spam', 'ham', 'egg']

In [3]:
['spam'] * 5


Out[3]:
['spam', 'spam', 'spam', 'spam', 'spam']

In [4]:
['spam', 'ham', 'egg'][0]


Out[4]:
'spam'

In [5]:
['spam', 'ham', 'egg'][1:]


Out[5]:
['ham', 'egg']

In [6]:
len(['spam', 'ham', 'egg'])


Out[6]:
3

In [7]:
'ham' in ['spam', 'ham', 'egg']


Out[7]:
True

In [8]:
for animal in ['cat', 'dog', 'snake']:
    print(animal)


cat
dog
snake

In [9]:
animals = ['cat', 'dog', 'snake']

In [10]:
animals.append('elephant')

In [11]:
animals


Out[11]:
['cat', 'dog', 'snake', 'elephant']

In [12]:
ret = []

In [13]:
for animal in animals:
    ret.append(len(animal))

In [14]:
ret


Out[14]:
[3, 3, 5, 8]

In [15]:
[len(animal) for animal in animals]


Out[15]:
[3, 3, 5, 8]

In [16]:
dog, cat = ['dog', 'cat']

In [17]:
dog


Out[17]:
'dog'

In [18]:
cat


Out[18]:
'cat'

タプル


In [19]:
('spam', 'ham', 4)


Out[19]:
('spam', 'ham', 4)

In [20]:
('spam', 'ham') + ('egg',)


Out[20]:
('spam', 'ham', 'egg')

In [21]:
('spam',) * 5


Out[21]:
('spam', 'spam', 'spam', 'spam', 'spam')

In [22]:
('spam', 'ham', 'egg')[0]


Out[22]:
'spam'

In [23]:
('spam', 'ham', 'egg')[1:]


Out[23]:
('ham', 'egg')

In [24]:
len(('spam', 'ham', 'egg'))


Out[24]:
3

In [25]:
'ham' in ('spam', 'ham', 'egg')


Out[25]:
True

In [26]:
('spam',)


Out[26]:
('spam',)

In [27]:
('spam')


Out[27]:
'spam'

In [28]:
'dog', 'cat'


Out[28]:
('dog', 'cat')

In [29]:
def head_splitter(seq):
    return seq[0], seq[1:]

In [30]:
head, tail = head_splitter(['head', 'body', 'tail'])

In [31]:
head


Out[31]:
'head'

In [32]:
tail


Out[32]:
['body', 'tail']

In [33]:
def bad_implementation():
    return 'username', 'user_password', 'user_id', 'user_permission'

In [34]:
username, user_password, user_id, user_permission = bad_implementation()

辞書


In [35]:
user_info = {'user_name': 'hirokiky', 'last_name': 'Kiyohara'}

In [36]:
user_info


Out[36]:
{'last_name': 'Kiyohara', 'user_name': 'hirokiky'}

In [37]:
user_info['user_name']


Out[37]:
'hirokiky'

In [38]:
user_info['first_name'] = 'Hiroki'

In [39]:
user_info


Out[39]:
{'first_name': 'Hiroki', 'last_name': 'Kiyohara', 'user_name': 'hirokiky'}

In [40]:
'user_name' in user_info


Out[40]:
True

In [41]:
'bio' in user_info


Out[41]:
False

In [42]:
user_info['bio']


---------------------------------------------------------------------------
KeyError                                  Traceback (most recent call last)
<ipython-input-42-cb2fbb445a82> in <module>()
----> 1 user_info['bio']

KeyError: 'bio'

In [43]:
user_info.get('user_name')


Out[43]:
'hirokiky'

In [44]:
bio = user_info.get('bio')

In [45]:
print(bio)


None

In [46]:
user_info.get('bio', '')


Out[46]:
''

In [47]:
d = {'foo': 'spam', 'bar': 'ham'}

In [48]:
d.items()


Out[48]:
dict_items([('foo', 'spam'), ('bar', 'ham')])

In [49]:
d = {'foo': 'spam', 'bar': 'ham'}

In [50]:
for key, value in d.items():
    print(key, value)


foo spam
bar ham

集合


In [51]:
{'spam', 'ham'}


Out[51]:
{'ham', 'spam'}

In [52]:
{'spam', 'spam', 'spam'}


Out[52]:
{'spam'}

In [53]:
unique_users = {'dog', 'cat'}

In [54]:
unique_users.add('snake')

In [55]:
unique_users


Out[55]:
{'cat', 'dog', 'snake'}

In [56]:
len(unique_users)


Out[56]:
3

In [57]:
unique_users.add('snake')

In [58]:
unique_users.add('snake')

In [59]:
unique_users.add('snake')

In [60]:
len(unique_users)


Out[60]:
3

In [61]:
allowed_permissions = {'edit', 'view'}

In [62]:
requested_permissions = {'view', 'delete'}

In [63]:
allowed_permissions & requested_permissions


Out[63]:
{'view'}

In [64]:
editor = {'edit', 'comment'}

In [65]:
reviewer = {'comment', 'approve'}

In [66]:
editor | reviewer


Out[66]:
{'approve', 'comment', 'edit'}