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__属性访问。如:

deftest():"this is a document string"

return 100+1000

>>>print test.__doc__thisis a document string

2.保留字

andelifglobalor yield

assertelseifpass

breakexceptimportprint

classexecinraise

continuefinallyisreturn

defforlambdatry

delfromnotwhile

使用下面的代码可以打印python的关键字:

>>> from keyword importkwlist>>> print kwlist

输出如下:

['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运算符和表达式

Python运算符列表

运算符描述

x+y,x-y

加、减,“+”号可重载为连接符

x*y,x**y,x/y,x%y

相乘、求平方、相除、求余,“*”号可重载为重复,“%”号可重载为格式化

,>=,==,<>,!=

比较运算符

+=,-=,*=,/=,%=,**=,<<=,>>=,&=,^=,|=

自变运算符

x|y

按位或

x^y

按位异或

x&y

按位与

~x

按位取反

x<>y

x向左或向右移y位

is, is not

等同测试

in, not in

是否为成员测试

or,and,not

逻辑运算符

x[i],x[i:j],x.y,x(...)

索引,分片,限定引用,函数调用

(...),[...],{...},'...'

元组,列表,字典,转化为字符串

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

运算符描述

'expr'

字符串转换

{key:expr,...}

字典

[expr1,expr2...]

列表

(expr1,expr2,...)

元组

function(expr,...)

函数调用

x[index:index]

切片

x[index]

下标索引取值

x.attribute

属性引用

~x

按位取反

+x,-x

正,负

x**y

x*y,x/y,x%y

乘,除,取模

x+y,x-y

加,减

x<>y

移位

x&y

按位与

x^y

按位异或

x|y

按位或

x=y,x>y

比较

x is y,x is not y

等同测试

x in y,x not in y

成员判断

not x

逻辑否

x and y

逻辑与

x or y

逻辑或

lambda arg,...:expr

Lambda匿名函数

真值表

对象/常量值

""

"string"

0

>=1

<=-1

()空元组

[]空列表

{}空字典

None

复合表达式

对于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 andb

0

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

>>> a,b=10,20

>>> a orb10

>>> a,b=0,5

>>> a orb5

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

>>> not 2False>>> not0

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

>>>x1

>>>y1

>>>z1

可以多元赋值:

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

>>>x1

>>>y2

>>>z'a string'

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

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

>>>y2

>>>z'a string'

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

>>> #swapping variables in Python

>>> x,y=1,2

>>>x1

>>>y2

>>> x,y=y,x>>>x2

>>>y1

python编程特点_Python基础(1)--Python编程习惯与特点相关推荐

  1. python raise用处_python基础教程python raise的基本使用

    简介 当程序出现错误,python会自动引发异常,也可以通过raise显示地引发异常.一旦执行了raise语句,raise后面的语句将不能执行. 1.演示raise用法 try: s = None i ...

  2. 第二章(1):Python入门:语法基础、面向对象编程和常用库介绍

    第二章(1):Python入门:语法基础.面向对象编程和常用库介绍 目录 第二章(1):Python入门:语法基础.面向对象编程和常用库介绍 1. Python 简介 1.1 Python 是什么? ...

  3. python gui编程书籍_GitHub - ZhaoGui/codeparkshare: Python初学者(零基础学习Python、Python入门)书籍、视频、资料、社区推荐...

    PythonShare Python初学者(零基础学习Python.Python入门)书籍.视频.资料.社区推荐 本文 主要 针对 零基础 想学习Python者.本文本文由@史江歌(shijiangg ...

  4. Python学习教程(Python学习路线_Python基础学习教程_Python视频教程):初学者新手怎样快速入门Python

    Python学习教程(Python学习路线_Python基础学习教程_Python视频教程):初学者新手怎样快速入门Python? 人生苦短,我用Python!!!短短几个字,现在在各大学习类平台随处 ...

  5. 零基础学python需要多久-零基础学习Python开发需要多长时间?

    原标题:零基础学习Python开发需要多长时间? Python开发技术目前可谓是互联网行业编程界的新宠,不少零基础想要进入IT行业的人员都纷纷加入学习Python开发.零基础学习Python开发技术需 ...

  6. python自学步骤-零基础学Python应该学习哪些入门知识及学习步骤安排

    众所周知,Python以优雅.简洁著称,入行门槛低,可以从事Linux运维.Python Web网站工程师.Python自动化测试.数据分析.人工智能等职位!就目前来看,Python岗位人才缺口高达4 ...

  7. 【python教程入门学习】学python要多久,0基础学python有多难

    学python要多久,0基础学python有多难,这是很多想学习python语言同学绕不开的问题,都害怕花完钱最终没有应有的回报!对于毫无经验0基础的同学来说学习python什么最重要,方向选对坚持下 ...

  8. python入门教材论坛_GitHub - aisuhua/codeparkshare: Python初学者(零基础学习Python、Python入门)书籍、视频、资料、社区推荐...

    PythonShare Python初学者(零基础学习Python.Python入门)书籍.视频.资料.社区推荐 本文 主要 针对 零基础 想学习Python者.本文本文由@史江歌(shijiangg ...

  9. 0基础学python要多久-零基础学习Python开发需要多长时间?

    原标题:零基础学习Python开发需要多长时间? Python开发技术目前可谓是互联网行业编程界的新宠,不少零基础想要进入IT行业的人员都纷纷加入学习Python开发.零基础学习Python开发技术需 ...

  10. [转载] Python Web开发—进阶提升 490集超强Python视频教程 真正零基础学习Python视频教程

    参考链接: 在Python中创建代理Web服务器 2 Python Web开发-进阶提升 490集超强Python视频教程 真正零基础学习Python视频教程 [课程简介] 这是一门Python We ...

最新文章

  1. Python计算机视觉——图像到图像的映射
  2. Java基础教程——包装类
  3. AI大咖山世光:AlphaGo Zero的成功并不能复制到人脸识别!
  4. python数据结构与算法分析_数据结构与算法(Python版)
  5. 年度第一效率神器:你一定不想错过它!
  6. IEDA 配置Git_04
  7. HTML5 API详解(1):fullscreen全屏模式
  8. [LeetCode]题解(python):012-Integer to Roman
  9. 按钮下载Eclipse Color Theme
  10. 动画 - 收藏集 - 掘金
  11. 如何对CPU过载进行排查
  12. Eucalyptus(桉树)客户群体
  13. 数学家吴文俊批判“中国式奥数”:害人害数学
  14. java汉字转拼音或效验汉字是否存在(过滤)
  15. java实现移位密码的加密
  16. CSS线性渐变和径向渐变详解
  17. 声音四要素:音强、音调、音色和波形包络
  18. I帧、B帧、P帧以及IDR帧之间的关系
  19. 【TCP wrappers】关于/etc/hosts.allow /etc/hosts.deny
  20. android车机蓝牙,安卓APP通过蓝牙串口模块控制DSP车机收音机

热门文章

  1. Django(ORM常用字段)
  2. 自动化中间人攻击工具subterfuge小实验
  3. Angular讲义 ---作用域
  4. 创建.NET Core程序的Nuget Package
  5. 设置窗体的可见性无效
  6. EC++学习笔记(四) 设计与声明
  7. 分享 ASP.NET WebForm 另外一种开发方式,逃离服务器控件
  8. 2005这一年不堪回首的日子
  9. [转载] python 字符串方法大全
  10. [转载] python之numpy的基本使用