教你认识Python(二)

Python的设计哲学和定位

Python的设计哲学是“优雅”、“明确”、“简单”。Python开发者的哲学是“用一种方法,最好是只有一种方法来做一件事”。在设计Python语言时,如果面临多种选择,Python开发者一般会拒绝花俏的语法,而选择明确没有或者很少有歧义的语法。这些准则被称为“ Python格言”。在Python解释器内运行import this可以获得完整的列表。
    []优美胜于丑陋(Python 以编写优美的代码为目标)[/][]明了胜于晦涩(优美的代码应当是明了的,命名规范,风格相似)[/][]简洁胜于复杂(优美的代码应当是简洁的,不要有复杂的内部实现)[/][]复杂胜于凌乱(如果复杂不可避免,那代码间也不能有难懂的关系,要保持接口简洁,多加注释!)[/][]扁平胜于嵌套(优美的代码应当是扁平的,不能有太多的嵌套)[/][]间隔胜于紧凑(优美的代码有适当的间隔,不要奢望一行代码解决问题,一行代码不能超过80个字符,你可以换行或起一个新的逻辑来写)[/][]可读性很重要(优美的代码是可读的)[/][]即便假借特例的实用性之名,也不可违背这些规则(这些规则至高无上),觉对不允许特列必须按照这个规则[/][]不要包容所有错误,除非你确定需要这样做(精准地捕获异常,不写 except:pass 风格的代码)[/][]当存在多种可能,不要尝试去猜测![/][]而是尽量找一种,最好是唯一一种明显的解决方案(如果不确定,就用穷举法)[/][]虽然这并不容易,因为你不是 Python 之父(这里的 Dutch 是指 Guido )[/][]做也许好过不做,但不假思索就动手还不如不做(动手之前要细思量)[/][]如果你无法向人描述你的方案,那肯定不是一个好方案;反之亦然(方案测评标准)[/][]命名空间是一种绝妙的理念,我们应当多加利用(倡导与号召)[/]
  简单的拿php和python做对比:
python是综合性的语言,他不光可以做web开发。他俩的对比应该仅限于web开发方向。不见其phpweb开发别python好,php是先入为主,python的web框架在2000才有的比较晚了;没有相对的好和坏,只有某些方面,哪个更好!
简单的拿C和python做对比:
Python慢,慢的严重,慢出风格,慢出自信!!!相同的程序Python比C慢几百倍很正常,这是因为他们一个是编译型语言一个是解释型语言。

程序的快慢很大程度上程序员逻辑、SQL、算法,比起O(n)和O(n^2)的区别, 语言间的差异就显得微乎其微
 

Python的编码风格

1、语法 统一缩进:
同一级代码保持一致,所有的Python Code第一行顶格写,然后你的缩进最好保持一定的风格(保持2个空格、4个空格、8个空格,按照官方的推荐保持4个空格规范为好),一开始养成了一个好的编码模式编程起来都会很舒服,所以一定一开始就要严格要求自己。然后最好不要去用table去设置空格,因为在不同的操作系统下,不同的编辑器一个table键表达的空格数都有所不同,所以做好手敲空格!!

有句话说的好"工欲善其事,必先利其器",所以选择一把利器也会对你的编程有很大帮助(推荐:Pycharm、Eclipse with PyDev、Sublime Text、PyScripter等!)
2、变量
    []变量名只能是 字母、数字或下划线的任意组合不能有特殊字符( & ^ & $ # -),也不能有空格;[/*][]第一个字符必须是字母(大小写均可)或者是下划线('_')开头,不能是数字;[/][]有效的变量举例: _myname、name、file2、file_2、w1w2_xx001[/][]无效的变量举例: 2file、my name is crh 、mysql-pid[/]
  small tip: 常量:数值不会变动的 变量:数值会变动的   在Python里面其实没有常量一说,所有的数值都可以改变,但是他依然有个常量的概念,但是是人为去定义它的,约定俗成的就是定义一个常量都是大写字母。   IDE="PyCharm" 这个IDE你就可以认为它是一个常量,但是你还是可以修改他,但是你既然有意识的把它定义为常量就不要去改动了。 Age=19  这个Age就是一个变量,你可以随时操作修改和引用。 ****这里需要注意下,设置变量的时候不能设置python自带的内置方法比如type 以下关键字不能声明为变量名
['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
3、字符编码 python解释器在加载 .py 文件中的代码时,会对内容进行编码(默认ascill) ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,其最多只能用 8 位来表示(一个字节),即:2**8 = 256,所以,ASCII码最多只能表示 256 个符号 [attach]1302[/attach] 关于中文 为了处理汉字,程序员设计了用于简体中文的GB2312和用于繁体中文的big5。 GB2312(1980年)一共收录了7445个字符,包括6763个汉字和682个其它符号。汉字区的内码范围高字节从B0-F7,低字节从A1-FE,占用的码位是72*94=6768。其中有5个空位是D7FA-D7FE。 GB2312 支持的汉字太少。1995年的汉字扩展规范GBK1.0收录了21886个符号,它分为汉字区和图形符号区。汉字区包括21003个字符。2000年的 GB18030是取代GBK1.0的正式国家标准。该标准收录了27484个汉字,同时还收录了藏文、蒙文、维吾尔文等主要的少数民族文字。现在的PC平台必须支持GB18030,对嵌入式产品暂不作要求。所以手机、MP3一般只支持GB2312。 从ASCII、GB2312、GBK 到GB18030,这些编码方法是向下兼容的,即同一个字符在这些方案中总是有相同的编码,后面的标准支持更多的字符。在这些编码中,英文和中文可以统一地处理。区分中文编码的方法是高字节的最高位不为0。按照程序员的称呼,GB2312、GBK到GB18030都属于双字节字符集 (DBCS)。 有的中文Windows的缺省内码还是GBK,可以通过GB18030升级包升级到GB18030。不过GB18030相对GBK增加的字符,普通人是很难用到的,通常我们还是用GBK指代中文Windows内码。   显然ASCII码无法将世界上的各种文字和符号全部表示,所以,就需要新出一种可以代表所有字符和符号的编码,即:Unicode Unicode(统一码、万国码、单一码)是一种在计算机上使用的字符编码。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,规定虽有的字符和符号最少由 16 位来表示(2个字节),即:2 **16 = 65536, 注:此处说的的是最少2个字节,可能更多 UTF-8,是对Unicode编码的压缩和优化,他不再使用最少使用2个字节,而是将所有的字符和符号进行分类:ascii码中的内容用1个字节保存、欧洲的字符用2个字节保存,东亚的字符用3个字节保存... 所以,python解释器在加载 .py 文件中的代码时,会对内容进行编码(默认ascill),如果是如下代码的话: 报错:ascii码无法表示中文
#!/usr/bin/env python
  
print "你好,世界"
改正:应该显示的告诉python解释器,用什么编码来执行源代码,即:
#!/usr/bin/env python
# -[i]- coding: utf-8 -[/i]-
  
print "你好,世界"
4、注释 单行注释:# 多行注释:""" 被注释内容"""  or  '''被注释内容'''

Python安装

Windows:
1、下载安装包
    https://www.python.org/downloads/
2、安装
    默认安装路径:C:\python27
3、配置环境变量
    【右键计算机】--》【属性】--》【高级系统设置】--》【高级】--》【环境变量】--》【在第二个内容框中找到 变量名为Path 的一行,双击】 --> 【Python安装目录追加到变值值中,用 ; 分割】
    如:原来的值;C:\python27,切记前面有分号,如果安装的是Python3.X也是同样的方法,换汤不换药。
Linux  Or Mac:​
无需安装,一般自带不是Python2.6就是Python2.7

如果要安装Python3.X的话,Linux下如果你的系统版本较低的话,默认安装源里面是没有的,这样就需要你用源码安装。
如果是Mack系统可以直接:
$ sudo brew install python3

0 个评论

要回复文章请先登录注册