Python入门篇之编程习惯与特点


Posted in Python onOctober 17, 2014

1.代码风格

在Python中,每行程序以换行符代表结束,如果一行程序太长的话,可以用“\”符号扩展到下一行。在python中以三引号(""")括起来的字符串,列表,元组和字典都能跨行使用。并且以小括号(...)、中括号[...]和大括号{...}包围的代码不用加“\”符也可扩展到多行。

在Python中是以缩进来区分程序功能块的,缩进的长度不受限制,但就一个功能块来讲,最好保持一致的缩进量。

如果一行中有多条语句,语句间要以分号(;)分隔。

以“#”号开头的内容为注释,python解释器会忽略该行内容。

在python中,所有标识符可以包括英文、数字以及下划线(_),但不能以数字开头。python中的标识符是区分大小写的。

以下划线开头的标识符是有特殊意义的。以单下划线开头(_foo)的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用“from xxx import *”而导入;以双下划线开头的(__foo)代表类的私有成员;以双下划线开头和结尾的(__foo__)代表python里特殊方法专用的标识,如__init__()代表类的构造函数。

在交互模式下运行python时,一个下划线字符(_)是特殊标识符,它保留了表达式的最后一个计算结果。

>>> "hello"

'hello'

>>> _

'hello'

>>> 10+10

20

>>> _

20

在python中,函数、类、模块定义的第一段代码如果是字符串的话,就把它叫作文件字串,可通过__doc__属性访问。如:

def test():

"this is a document string"
return 100+1000
>>>print test.__doc__

this is a document string

2.保留字

 and  elif  global  or          yield

 assert  else  if  pass

 break  except  import  print

 class  exec  in  raise

 continue finally  is  return

 def  for  lambda  try

 del  from  not  while

3.Python运算符和表达式

Python运算符列表

运算符优先顺序列表(从最高到最低)

真值表

复合表达式

对于and,当计算a and b时,python会计算a,如果a为假,则取a值,如果a为真,则python会计算b且整个表达式会取b值。如:

>>> a,b=10,20

>>> a and b   #a is true

20

>>> a,b=0,5   #a is false

>>> a and b

0

对于or,当计算a or b时,python会计算a,如果a为真,则整个表达式取a值,如果a为假,表达式将取b值。如:

>>> a,b=10,20

>>> a or b

10

>>> a,b=0,5

>>> a or b

5

对于not,not将反转表表达式的“实际值”,如果表达式为真,not为返回假,如为表达式为假,not为返回真。如:

>>> not 2

False

>>> not 0

True

>>> not "test"

False

>>> not ""

True

4.给变量赋值

变量赋值:赋值并不是直接将一个值赋给一个变量,在Python中,对象是通过引用传递的。Python的赋值语句不会返回值,类似下面的语句是非法的:

>>> x=1

>>> y=(x=x+1)

SyntaxError: invalid syntax

链式赋值没有问题:

>>> x=1

>>> y=x=x+1

>>> x,y

(2, 2)

Python不支持类似x++或--x这样的前置/后置自增/自减运算

可以多重复值:

>>> x=y=z=1

>>> x

1

>>> y

1

>>> z

1

可以多元赋值:

>>> x,y,z=1,2,'a string'

>>> x

1

>>> y

2

>>> z

'a string'

通常使用小括号括起来,增强代码的可读性:

>>> (x,y,z)=(1,2,'a string')

>>> x

1

>>> y

2

>>> z

'a string'

使用Python的多元赋值方式可以实现无中间变量交换两变量的值:

>>> #swapping variables in Python

>>> x,y=1,2

>>> x

1

>>> y

2

>>> x,y=y,x

>>> x

2

>>> y

1
Python 相关文章推荐
使用go和python递归删除.ds store文件的方法
Jan 22 Python
深入解析Python中函数的参数与作用域
Mar 20 Python
linux环境下python中MySQLdb模块的安装方法
Jun 16 Python
Python3利用Dlib19.7实现摄像头人脸识别的方法
May 11 Python
Python使用gRPC传输协议教程
Oct 16 Python
Python实现高斯函数的三维显示方法
Dec 29 Python
django的ORM模型的实现原理
Mar 04 Python
Django中ajax发送post请求 报403错误CSRF验证失败解决方案
Aug 13 Python
Python找出列表中出现次数最多的元素三种方式
Feb 24 Python
使用python脚本自动生成K8S-YAML的方法示例
Jul 12 Python
Python中使用aiohttp模拟服务器出现错误问题及解决方法
Oct 31 Python
matplotlib画混淆矩阵与正确率曲线的实例代码
Jun 01 Python
python中正则表达式的使用详解
Oct 17 #Python
基于python编写的微博应用
Oct 17 #Python
python连接oracle数据库实例
Oct 17 #Python
Python 检查数组元素是否存在类似PHP isset()方法
Oct 14 #Python
跟老齐学Python之Import 模块
Oct 13 #Python
跟老齐学Python之类的细节
Oct 13 #Python
python修改注册表终止360进程实例
Oct 13 #Python
You might like
WinXP + Apache +PHP5 + MySQL + phpMyAdmin安装全功略
2006/07/09 PHP
php Sql Server连接失败问题及解决办法
2009/08/07 PHP
Memcached常用命令以及使用说明详解
2013/06/27 PHP
PHP中的排序函数sort、asort、rsort、krsort、ksort区别分析
2014/08/18 PHP
php实现的二分查找算法示例
2017/06/20 PHP
Z-Blog中用到的js代码
2007/03/15 Javascript
深入理解JavaScript系列(7) S.O.L.I.D五大原则之开闭原则OCP
2012/01/15 Javascript
使用JavaScript实现Java的List功能(实例讲解)
2013/11/07 Javascript
JavaScript获取图片的原始尺寸以宽度为例
2014/05/04 Javascript
jquery左边浮动到一定位置时显示返回顶部按钮
2014/06/05 Javascript
JavaScript 基本概念
2015/01/20 Javascript
使用DeviceOne实现微信小程序功能
2016/12/29 Javascript
vue2.0开发入门笔记之.vue文件的生成和使用
2017/09/19 Javascript
JavaScript中toLocaleString()和toString()的区别实例分析
2018/08/14 Javascript
vue中axios实现数据交互与跨域问题
2019/05/12 Javascript
微信小程序webview组件交互,内联h5页面并网页实现微信支付实现解析
2019/08/16 Javascript
微信小程序 简易计算器实现代码实例
2019/09/02 Javascript
如何使用原生Js实现随机点名详解
2021/01/06 Javascript
Python 基础教程之str和repr的详解
2017/08/20 Python
python中使用iterrows()对dataframe进行遍历的实例
2018/06/09 Python
python简易远程控制单线程版
2018/06/20 Python
Python3 Post登录并且保存cookie登录其他页面的方法
2018/12/28 Python
Python元组知识点总结
2019/02/18 Python
在Pandas中处理NaN值的方法
2019/06/25 Python
用Pelican搭建一个极简静态博客系统过程解析
2019/08/22 Python
python用线性回归预测股票价格的实现代码
2019/09/04 Python
python实现复制文件到指定目录
2019/10/16 Python
python argparse传入布尔参数false不生效的解决
2020/04/20 Python
Python实现曲线拟合的最小二乘法
2021/02/19 Python
戴尔英国官网:Dell英国
2017/05/27 全球购物
德国baby-markt婴儿用品瑞士网站:baby-markt.ch
2017/06/09 全球购物
小米乌克兰网上商店:Xiaomi.UA
2019/10/29 全球购物
人力资源管理专业应届生求职信
2014/04/24 职场文书
2015年房地产销售工作总结
2015/04/20 职场文书
2016个人廉洁自律承诺书
2016/03/25 职场文书
vue修饰符.capture和.self的区别
2022/04/22 Vue.js