Python 初学者进阶的九大技能(附代码)( 三 )
如果想要生活多些乐趣 , 请学习Python的列表解析式 , 下面是同样问题通过列表解析式得出的:
my_list = [letter for letter in my_list if isinstance(letter,str)]就是这样!
还没结束!使用过滤器也可以获得同样的结果:
def get_numbers(input_char):if not isinstance(input_char,str):return Truereturn Falsemy_list = [1,2,3,'a','b','c']check_list = filter(get_numbers, my_list)for items in check_list:现在你可能明白了 , 实现同样的结果有很多方法 , 你必须找出适合你或你团队的那个 。
额外知识点
- 反向列表(或字符串):
- 在列表中加入元素:
for name in greek_gods:print (f'Greek God: {name}')你很快就能发现 , 这里我们不包含索引 。 如果想用索引打印要怎么做?在Python中 , 你可以使用枚举(enumerate参数) , 这是一种访问所需内容的绝佳方案 。
for index, name in enumerate(greek_gods):print (f'at index {index} , we have : {name}')
本文插图
7. 使用函数(并正确谈论函数):
我在从事动画工作时 , 总是说如果同一个操作重复5次 , 就应该考虑是否需要写个程序 。 有些时候花上两周开发一款工具可以节省你六个礼拜的工作时间 。
编写代码时 , 如果发现同一动作执行了不止一次 , 应该考虑这是过程还是函数 , 还不只是写写代码 。 函数会返回内容 , 过程则只是运行代码 , 第一个案例是个过程 , 第二个是函数 。
这样说可能会令人困惑 , 下面是其工作原理的示意图:
本文插图
注意print和return的差异 , 看起来也许很相似 , 但如果你查看输出结果 , 函数只会返回发送的名称 。
下一个要了解的语法是parameters和arguments , 在过程或函数中定义时(红色部分)被称为形参(parameters) , 当发送名称到过程或函数中(绿色部分)时就叫实参(arguments)了 。
下面是些案例:
案例1
def get_numbers(input_char):if not isinstance(input_char,str):return Truereturn Falsemy_list = [1,2,3,'a','b','c']check_list = filter(get_numbers, my_list)for items in check_list:
本文插图
无需把循环写上3次 , 只需在过程中写上一次 , 然后在需要时调用即可 。 在案例2中 , 你可以发现代码是如何返回反向列表的 。
案例2
def reverse_list(list_input):return list_input[::-1]my_list = ['a', 'b' , 'c']print (reverse_list(my_list))>>> ['c', 'b', 'a']8.面向对象编程
Python是一种面向对象的语言 , 其强大之处在于对象 。 将对象视为蓝图 , 如果使用蓝图 , 你可以创建该蓝图的实例 。 也就是说 , 你可以创建需要的多个蓝图实例 , 但不会损毁你使用的蓝图 。
- 悠家娱乐 VS Code 中的 Python 体验,#新闻拍一拍# 微软推出 Pylance,改善
- Python1行代码实现Python数据分析:图表美观清晰,自带对比功能丨开源
- Python之王 Pandas数据合并与拼接的5种方法
- 瑜伽微社区|一位资深瑜伽练习者送给瑜伽初学者的建议
- Python不像想象那么简单!学会这些小技巧,离精通更进一步
- Linux中国TB VS Code 中的 Python 体验,微软推出 Pylance,改善
- 科技怪人C++程序员的学习进阶之路之书籍篇
- Linux中国TB微软推出 Pylance,改善 VS Code 中的 Python 体验
- 三微授渔Python超级教程,使用Python进行检测面部特征
- TVB剧透社|历届TVB港姐进阶图鉴,“最不起眼”港姐如今包你认不出