bdjhx 发表于 2018-8-7 10:59:01

python3_00.入门

  了解,建议,资源。继续更新~~~~
  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.>
  即便假借特例的实用性之名,也不可违背这些规则。

[*]  Errors should never pass silently. Unless explicitly silenced.
  不要放过一切错误,除非错误本身需要以忽略对待。

[*]
  In the>
  面对不明确的定义,拒绝猜测的诱惑。

[*]  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.>
  做比不做好,但立马去做有时还不如不做。

[*]
  If the implementation is hard to explain, it’s a bad>
  如果实现很难说明,那它是个坏想法。

[*]
  If the implementation is easy to explain, it may be a good>
  如果实现容易解释,那它有可能是个好想法。

[*]
  Namespaces are one honking great>
  命名空间是个绝妙的想法,让我们多多地使用它们吧!
  八荣八耻
  以动手实践为荣,以只看不练为耻。
  以打印日志为荣,以单步跟踪为耻。
  以空白分隔为荣,以制表分隔为耻。
  以单元测试为荣,以手工测试为耻。
  以代码重用为荣,以复制粘贴为耻。
  以多态应用为荣,以分支判断为耻。
  以Pythonic为荣,以冗余拖沓为耻。
  以总结思考为荣,以不求甚解为耻。

[*]  Python资源大全:

[*]  https://github.com/jobbole/awesome-python-cn

[*]  入门指南:

[*]  http://docs.pythontab.com/python/python3.4/index.html

[*]  很有用的解决方案:

[*]  http://python3-cookbook.readthedocs.io/

[*]  菜鸟教程:

[*]  http://www.runoob.com/

[*]  python学习资料:

[*]  https://www.zhihu.com/question/34907211

[*]  python文档:

[*]  http://python.usyiyi.cn/

[*]  深度开源python经验:

[*]  http://www.open-open.com/lib/tag/Python

[*]  定义变量的神奇网站:

[*]  http://unbug.github.io/codelf/

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

[*]  标准库导入
[*]  第三方库导入
[*]  应用程序指定导入
  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文件)的文件名,且不带路径和文件扩展名。
页: [1]
查看完整版本: python3_00.入门