美文网首页python热爱者
Python一些不为人知的基础技巧

Python一些不为人知的基础技巧

作者: 力大士 | 来源:发表于2018-05-18 23:23 被阅读7次

1.startswith()和endswith()参数可以是元组

当检测字符串开头或结尾时,如果有多个检测值,可以用元组作为startswith()和endswith()参数:

2.enumerate()设置start参数做为索引起始值

当用enumerate()迭代同时要得到索引时,可以设置start参数作为索引起始值:

3.对切片命名

当代码中到处都是硬编码的切片索引时,我们的代码将变得无法阅读。可以对切片命名解决此问题:

作为一条基本准则,代码中如果有很多硬编码的索引值,将导致可读性合可维护性都不佳。一般来说,内置的slice()函数会创建一个切片对象,可以用在任何允许进行切片操作的地方。例如:

python学习交流群:125240963

4.上下文管理器可以同时管理多个资源

假设你要读取一个文件的内容,经过处理以后,写入到另一个文件。你能写出pythonic的代码,所以你使用了上下文管理器,满意地的写出了下面这样的代码:

你已经做的很好了,但是上下文管理器可以同时管理多个资源,上面这段代码还可以这样写: 

5.else子句

Python中的else子句不仅能在if语句中使用,还能在for、while、和try语句中使用。

在for循环或是while循环正常运行完毕时(而不是通过break语句或是return语句或是异常退出循环),才会运行else块。

举个例子:

如上,for循环正常结束,所以运行了后面的else块。 

由此可以看出,for循环如果没有正常运行完毕(如上面是break结束循环的),是不会运行后面的else块。 

仅当try块中没有异常抛出时才运行else块。一开始,你可能觉得没必要在try/except块中使用else子句。毕竟,在下述代码片段中,只有dangerous_call()不抛出异常,after_call()才会执行,对吧?

然而,after_call()不应该放在try块中。为了清晰明确,try块中应该只包括抛出预期异常的语句。因此,向下面这样写更好: 

现在很明确,try块防守的是dangerous_call()可能出现的错误,而不是after_call()。而且很明显,只有try块不抛出异常,才会执行after_call()。但要注意一点,else子句抛出的异常不会由前面的except子句处理,也就是说此时after_call()如果抛出异常,将不会被捕获到。 

python学习交流群:125240963

转载至:http://www.revotu.com/python-some-common-tricks.html#more

相关文章

  • python一些不为人知的小技巧

    python一些不为人知的小技巧 startswith()和endswith()参数可以是元组 当检测字符串开头或...

  • Python一些不为人知的基础技巧

    1.startswith()和endswith()参数可以是元组 当检测字符串开头或结尾时,如果有多个检测值,可以...

  • Python中一些不为人知的基础技巧总结

    更新时间:2018年05月19日 12:01:29 转载 作者:大师兄 这篇文章主要给大家总结介绍了Python...

  • python调试

    linux python调试技巧 Linux下Python基础调试 http://blog.163.com/liu...

  • Python基本数据类型

    Python补充02 Python小技巧 在这里列举一些我使用Python时积累的小技巧。这些技巧是我在使用Pyt...

  • python 总结

    python 随笔 关键字 基础 内建函数 技巧 模块 进阶

  • KVC不为人知的干货小技巧

    KVC不为人知的干货小技巧 这里给大家推荐一下一些不为人知的超实用的KVC技巧,瞬间提高自己的逼格 获取数组里的,...

  • Python中10个很值得称赞的操作

    前言 大家都在学习Python,那么, 你真正的掌握python了吗? 下面来列举10个Python基础又很有技巧...

  • Python中的一些高级技巧

    Python中的一些高级技巧 Python 开发中有哪些高级技巧?这是知乎上一个问题,我总结了一些常见的技巧在这里...

  • Python 中的一些小技巧

    这里是本人收集的一些 Python 小技巧,目前主要是一些实用函数,适合有一定基础的童鞋观看(不会专门介绍使用到的...

网友评论

    本文标题:Python一些不为人知的基础技巧

    本文链接:https://www.haomeiwen.com/subject/gdgndftx.html