pythonic

判断

c = a if a>b else b //如果a>b返回a,否则返回b



置换变量

a,b=b,a



逗号的妙用

>>> for i in range(0,5):

...    print i,

...

0 1 2 3 4

很明显 print语句默认的会在后面加上换行,加了逗号之后换行就变成了空格。


迭代数组

arry = [1,2,3,4]

for i, j in enumerate(arry):

    print i, j #i是下标,j是对应元素

>>>

0 1

1 2

2 3

3 4



字符拼接

chart_demo = u'凡尘皆美,念念不忘'

convert = '_'.join(chart_demo)

>>> print convert

>>> 凡_尘_皆_美_,_念_念_不_忘



列 表 生 成 式

chart_demo = u'凡尘皆美,念念不忘'

result = [i for i in chart_demo if i == u'念']

>>> print result

>>> ['念', '念']



布 尔 判 断

a = u'凡'

b = [u'凡']

c =  {'fan': u'凡'}

if a and b and c:

    print '凡尘皆美'

>>> 凡尘皆美



zip 建 字 典

keys = ['a', 'b', 'c', 'd']

values = [u'凡', u'尘', u'皆', u'美']

dict_result = dict(zip(keys, values))

>>> print dict_result

>>> {'a': '凡', 'b': '尘', 'c': '皆', 'd': '美'}



三 目 运 算 符

chart_demo = u'凡尘皆美'

temp = 'beautiful' if len(chart_demo) > 3 else 'ugly'

>>> print temp

>>> beautiful



字 典 计 数

chart_demo = u'凡尘皆美,念念不忘'

No.1:

count = {}

for i in chart_demo:

    count[i] = count.get(i, 0) + 1

>>> print count

>>> {'凡': 1, '尘': 1, '皆': 1, '美': 1, ',': 1, '念': 2, '不': 1, '忘': 1}

No.2:

from collections import Counter

c = Counter(u'凡尘皆美,念念不忘')

>>> print c.most_common()

>>> [('念', 2), ('凡', 1), ('尘', 1), ('皆', 1), ('美', 1), (',', 1), ('不', 1), ('忘', 1)]



list 反 向 遍 历

arry = [u'凡', u'尘', u'皆', u'美']

No.1:

for i in reversed(arry):

    print i

NO.2:

for i in arry[::-1]:

    print i

>>>



for...else... 语 法

你可能感兴趣的:(pythonic)