本文记录一些Python
日常编程中的小妙招,并使用IPython
进行交互测试,让我们更好的了解和学习Python
的一些特性。
<br/>
字符串格式化
%s
字符串占位符
name = 'ithui'
hobbies = ['下象棋', '敲代码']
print('我叫 %s,喜欢 %s' % (name, hobbies))
# 之前提到过字符串拼接列表元素,这里就是以顿号拼接
print('我叫 %s,喜欢 %s' % (name, '、'.join(hobbies)))
=============结果如下=============
我叫 ithui,喜欢 ['下象棋', '敲代码']
我叫 ithui,喜欢 下象棋、敲代码
<br/>
format
方法
In [6]: '我叫 {},喜欢 {}'.format(name, hobbies)
Out[6]: "我叫 ithui,喜欢 ['下象棋', '敲代码']"
In [7]: '我叫 {},喜欢 {}'.format(name, ','.join(hobbies))
Out[7]: '我叫 ithui,喜欢 下象棋,敲代码'
In [8]: hobbies = ', '.join(hobbies)
In [9]: '我叫 {name},喜欢 {hobbies}'.format(name=name, hobbies=hobbies)
Out[9]: '我叫 ithui,喜欢 下象棋, 敲代码'
<br/>
模板字符串
在字符串最前面写一个f
,就是模板字符串,{}
里面可以直接放置变量。
In [10]: name = 'ithui'
In [11]: hobbies = ['下象棋', '敲代码']
In [12]: print(f'我叫 {name},喜欢 {hobbies}')
我叫 ithui,喜欢 ['下象棋', '敲代码']
<br/>
切片
Python 中的切片非常实用,切片的索引语法适用于所有可迭代对象,不仅可以指定步长,还可以负数索引。
语法:
[start:end:step]
- start 表示开始索引
- end 表示结束索引
- step 每次索引的步长,默认为
1
,步长为正时,从左向右取值。步长为负时,反向取值。
<br/>
注意事项
[start, end)
,索引范围是 左闭右开,例如:[0: 10] 只能取到0-9
的索引范围。- 索引支持负数索引。例如:
[0:-1]
,表示从0 索引到最后一个,-1
代表最后一个索引位置。- 开始索引不写默认为0,结束索引不写默认为最后,步长不写,默认步长为 1。
<br/>
获取列表最后n个元素
In [62]: li = [1, 2, 3, 4, 5, 6, 7, 8]
In [63]: li[-1]
Out[63]: 8
In [64]: li[-2:]
Out[64]: [7, 8]
In [65]: li[-3:]
Out[65]: [6, 7, 8]
<br/>
奇偶数获取
In [56]: li = list(range(1, 11))
In [57]: li
Out[57]: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
In [58]: # 奇数
In [59]: li[::2]
Out[59]: [1, 3, 5, 7, 9]
In [60]: # 偶数
In [61]: li[1::2]
Out[61]: [2, 4, 6, 8, 10]
<br/>
复制列表元素
In [53]: li
Out[53]: [1, 2, 3, 4, 5]
In [54]: copy_li = li[::]
In [55]: copy_li
Out[55]: [1, 2, 3, 4, 5]
<br/>
字符串、列表反转
In [14]: li = [1, 2, 3, 4, 5, 6, 7, 8]
In [15]: li[::-1]
Out[15]: [8, 7, 6, 5, 4, 3, 2, 1]
In [16]: s = '654321'
In [17]: s[::-1]
Out[17]: '123456'
<br/>
交互环境变量 _
在交互环境中有一个隐藏的变量
_
,它是上一个表达式的结果。
<br/>
In [72]: li
Out[72]: [1, 2, 3, 4, 5]
In [73]: li[-1]
Out[73]: 5
In [74]: _
Out[74]: 5
In [75]: li[::]
Out[75]: [1, 2, 3, 4, 5]
In [76]: _
Out[76]: [1, 2, 3, 4, 5]
<br/>
尾语
✍ 用 Code 谱写世界,让生活更有趣。❤️
✍ 万水千山总是情,点赞再走行不行。❤️
✍ 码字不易,还望各位大侠多多支持。❤️