码迷,mamicode.com
首页 > 编程语言 > 详细

python3_00.入门

时间:2016-12-09 20:04:42      阅读:330      评论:0      收藏:0      [点我收藏+]

标签:python   better   

    了解,建议,资源。继续更新~~~~



python之禅

  • Beautiful is better than ugly. 

            优美胜于丑陋。

  • Explicit is better than implicit.

            明了胜于晦涩。

  • Simple is better than complex.

            简单胜于复杂。

  • Complex is better than complicated.

            复杂胜于难懂。

  • Flat is better than nested.

            扁平胜于嵌套。

  • Sparse is better than dense.

            分散胜于密集。

  • Readability counts.

            可读性应当被重视。

  • Special cases aren’t special enough to break the rules. Although practicality beats purity.

            即便假借特例的实用性之名,也不可违背这些规则。

  • Errors should never pass silently. Unless explicitly silenced.

            不要放过一切错误,除非错误本身需要以忽略对待。

  • In the face of ambiguity, refuse the temptation to guess.

            面对不明确的定义,拒绝猜测的诱惑。

  • There should be one– and preferably only one –obvious way to do it.

            用一种方法,最好只有一种方法来做一件事。

  • Although that way way not be obvious at first unless you’re Dutch.

            虽然一开始这种方法并不是显而易见的,但谁叫你不是Python之父呢。

  • Now is better than never. Although never is often better than right now.

            做比不做好,但立马去做有时还不如不做。

  • If the implementation is hard to explain, it’s a bad idea.

            如果实现很难说明,那它是个坏想法。

  • If the implementation is easy to explain, it may be a good idea.

            如果实现容易解释,那它有可能是个好想法。

  • Namespaces are one honking great idea – let’s do more of those!

            命名空间是个绝妙的想法,让我们多多地使用它们吧!



八荣八耻

以动手实践为荣,以只看不练为耻。

以打印日志为荣,以单步跟踪为耻。

以空白分隔为荣,以制表分隔为耻。

以单元测试为荣,以手工测试为耻。

以代码重用为荣,以复制粘贴为耻。

以多态应用为荣,以分支判断为耻。

以Pythonic为荣,以冗余拖沓为耻。

以总结思考为荣,以不求甚解为耻。



1、python3 与python2区别:

    不用太纠结

2、默认情况下,Python 3 源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串。 

    #!/usr/bin/env python3

    # -*- coding: utf-8 -*-

    #!/usr/bin/Python是告诉操作系统执行这个脚本的时候,调用/usr/bin下的python解释器;相当于写死了python路径;

    #!/usr/bin/env python这种用法是为了防止操作系统用户没有将python装在默认的/usr/bin路径里。当系统看到这一行的时候,首先会到env设置里查找python的安装路径,再调用对应路径下的解释器程序完成操作。推荐这种写法。

    附:

    http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html

    http://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/001431664106267f12e9bef7ee14cf6a8776a479bdec9b9000

    ASCII编码:用来表示英文,它使用1个字节表示,其中第一位规定为0,其他7位存储数据,一共可以表示128个字符。

    拓展ASCII编码:用于表示更多的欧洲文字,用8个位存储数据,一共可以表示256个字符

    GBK/GB2312/GB18030:表示汉字。GBK/GB2312表示简体中文,GB18030表示繁体中文。

    Unicode编码:包含世界上所有的字符,是一个字符集。

    UTF-8:是Unicode字符的实现方式之一,它使用1-4个字符表示一个符号,根据不同的符号而变化字节长度。

3、注释:

    单行注释:以#开头

    多行注释:三个单引号(‘‘‘)或者三个双引号(""")将注释括起来

4、缩进:

    PEP8中建议使用4个空格作为缩进,但是却绝对!绝对不能混用Tab和空格。

    不建议使用Tab,因为在不同的环境下展现不一样。

5、空行:

    顶级定义之间空两行, 比如函数或者类定义. 方法定义, 类定义与第一个方法之间, 都应该空一行. 函数或方法中, 某些地方要是你觉得合适, 就空一行.

6、空格 :

  • 括号内不要有空格.

  • 不要在逗号, 分号, 冒号前面加空格, 但应该在它们后面加(除了在行尾).

  • 参数列表, 索引或切片的左括号前不应加空格.

  • 在二元操作符两边都加上一个空格, 比如赋值(=), 比较(==, <, >, !=, <>, <=, >=, in, not in, is, is not), 布尔(and, or, not). 至于算术操作符两边的空格该如何使用, 需要你自己好好判断. 不过两侧务必要保持一致.

  • 不要用空格来垂直对齐多行间的标记, 因为这会成为维护的负担(适用于:, #, =等):

7、导入:

    导入总应该放在文件顶部, 位于模块注释和文档字符串之后, 模块全局变量和常量之前. 导入应该按照从最通用到最不通用的顺序分组:

  1. 标准库导入

  2. 第三方库导入

  3. 应用程序指定导入

8、命名:

  • 模块名和包名采用小写字母并且以下划线分隔单词的形式;

如:regex_syntax,py_compile,_winreg

  • 类名或异常名采用每个单词首字母大写的方式;

如:BaseServer,ForkingMixIn,KeyboardInterrupt

  • 全局或者类常量,全部使用大写字母,并且以下划线分隔单词;

如:MAX_LOAD

  • 其余变量命名包括方法名,函数名,普通变量名则是采用全部小写字母,并且以下划线分隔单词的形式命名。

如:my_thread

  • 以上的内容如果是内部的,则使用下划线开头命名。

如:__init__,__new__

9、if __name__ == ‘__main__‘:

    每一个模块都有一个内置属性__name__。而__name__的值取决与python模块(.py文件)的使用方式。如果是直接运行使用,那么这个模块的__name__值就是“__main__”;如果是作为模块被其他模块调用,那么这个模块(.py文件)的__name__值就是该模块(.py文件)的文件名,且不带路径和文件扩展名。

    

本文出自 “拔电源的运维空间” 博客,请务必保留此出处http://zhangdj.blog.51cto.com/9210512/1881217

python3_00.入门

标签:python   better   

原文地址:http://zhangdj.blog.51cto.com/9210512/1881217

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!