上节已经介绍了极简的Python代码编写,已经用到了赋值语句,本节对Python的程序语句进行介绍。

一、 常用命令

在介绍Python语句之前,先介绍一下几个有用的Python命令。

  1. dir(模块名或类名或变量名或表达式名):获得当前模块、变量对应类型、表达式计算值对应类的属性列表
  2. type(变量名或表达式名):获取变量或表达式计算值的对应类型;
  3. help(类名)或help(类名.属性或方法名)或help(变量.属性或方法名),如:help(name.count):给出参数对应的帮助说明,需要说明的是一个变量如果是系统的类型或类实例,通过变量名.方法或属性能找到该类型或类的帮助。

二、 Python的命名建议

1、 文件名:全小写,可使用下划线

2、 函数名:小写,可以用下划线风格单词以增加可读性。如:myfunction,my_example_function,大小写混合不推荐使用;

3、 变量:变量名全部小写,由下划线连接各个单词。

三、 Python的基本程序语句

1、 注释语句

Python中注释使用#开头,只能做单行注释,如果是多行,可以采用每行加#号。

2、 import语句

import语句是引入已经定义好的模块,供需要使用的模块使用。有两种语法:

import 模块名

from 模块名import 方法或属性名

from 模块名import *

这三者的区别是,第一种方法将整个模块都引入,可以使用这个模块所有的属性和方法,使用前需要带模块名的方式调用;第二种方法是只引入某个属性或方法,第三种方式用*号引入所有方法和属性。第二、三种方式引入的属性和方法在使用时不带模块名。但如果多个模块和引用模块存在相同的方法或属性则不能使用该方法。

例如:

import math

sqrt(4)

Traceback (most recent call last):

File “<pyshell#1>”, line 1, in

sqrt(4)

NameError: name ‘sqrt’ is not defined

math.sqrt(4)

2.0

from math import sqrt

sqrt(4)

2.0

3、 def函数定义语句

Python中的函数定义以def开始,具体语法如下:

def 函数名(变量列表):

….语句体

注意:函数的参数括号后必须加冒号,函数的声明必须顶格写,语句与函数的声明必须缩进4个空格(上面例子以4个点表示,请参见下面Python的代码嵌套格式部分的内容),函数的返回可以以return返回,也可以不指定return自动结束。

例子:

def add(n1,n2):

return n1+n2

4、 if条件语句

语法如下:

if 条件1:

….执行的内容1

elif 条件2:

….执行的内容2

elif 条件3:

….执行的内容3

else:

….执行的内容4

注意:if总体用法与c类似,但每个关键词语句后面必须有冒号,每个执行内容必须缩进4个空格。

举例:

if add(1,4)>10:

….print(‘和大于10’)

else:

….print(’和小于等于10’)

5、 for循环语句

for语句与C语言相差比较大,涉及到一些复杂数据类型“迭代”、”序列”,在这里不进行讲解,在后面学习了复杂数据类型再补充。在此只介绍基本语法:

for iterating_var in sequence:

…. 语句块

6、 while循环语句

while循环与c语言类似,语法如下:

while 条件表达式:

…. 语句块

注意:

1、 条件表达式后必须有冒号;

2、 while语句支持与c类似的break和continue;

3、 语句块与while条件语句必须缩进4个空格;

4、 与c语言的差异除了格式上的差异外,在Python中只支持前while语句,不能象C语言while语句既可以在循环体开始,也可以在循环体结束。

例子:

while True:

name=input(‘Your name:’)

if(len(name)>0):

print(‘welcome you,’+name+’!’)

else:

print(“Good bye!”)

break

输出:

Your name:jwp

welcome you,jwp!

Your name:Lisi

welcome you,Lisi!

Your name:

Good bye!

补充说明一个界面使用方法,在交互式方式下,输入语句结束时需要输入两次回车,否则编辑器认为输入没有结束。

7、 Python的代码嵌套格式

这部分内容其实前面已经部分涉及到,主要有如下内容:

  1. Python用缩进表示一次代码嵌套,每次缩进代表该块相同缩进的代码是上层的嵌套代码,缩进符可以是TAB键、指定个数的空格,这种缩进的代码块类似于C语言的{}括起来的代码块。与c语言嵌套可以多用一次大括号类似,同一个缩进的代码块可以在上层代码基础上缩进超过一次,只要该代码块的缩进保持一致就可以;
  2. Python的缩进没有强制要求是多少个符合,只要求同一语句体必须缩进一致,我们甚至可以对同一个if语句不同条件用不同的缩进方式,只需要满足同一层的代码块一致,且比上一层有缩进就可以,且首层无缩进,但真正编写代码时建议一次缩进就用相同的缩进字符数,两次就是2倍,依次类推;
  3. 首层语句体之前不能有空格,否则编译会报错;
  4. Python的函数定义、if、while、for语句最后必须有冒号,其后跟代码需要有一次缩进。

    Python这种代码缩进方式进行的代码嵌套与c语言差别很大,但使用缩进来嵌套代码有利于提高代码的可读性,不用再去进行括号匹配就可以知道相同层次的语句体范围。只是需要注意对同一文件使用不同编辑器编辑时,可能相同的TAB键有不同的缩进数,以及有些编辑器会强行转换连续的N个空格为TAB键的情况,可能导致缩进不一致。

第2.2节 Python的语句的更多相关文章

  1. 第8.2节 Python类的__init__方法深入剖析:构造方法案例详解

    前面一节介绍了构造方法定义的语法,并进行了语法解释说明,本节将通过案例来说明构造方法参数传递及返回值的情况. 一.    案例说明 本节定义一个汽车类,它有四个实例变量:wheelcount, pow ...

  2. 第7.26节 Python中的@property装饰器定义属性访问方法getter、setter、deleter 详解

    第7.26节 Python中的@property装饰器定义属性访问方法getter.setter.deleter 详解 一.    引言 Python中的装饰器在前面接触过,老猿还没有深入展开介绍装饰 ...

  3. 第7.25节 Python案例详解:使用property函数定义与实例变量同名的属性会怎样?

    第7.25节 Python案例详解:使用property函数定义与实例变量同名的属性会怎样? 一.    案例说明 我们上节提到了,使用property函数定义的属性不要与类内已经定义的普通实例变量重 ...

  4. 第7.24节 Python案例详解:使用property函数定义属性简化属性访问代码实现

    第7.24节 Python案例详解:使用property函数定义属性简化属性访问代码实现 一.    案例说明 本节将通过一个案例介绍怎么使用property定义快捷的属性访问.案例中使用Rectan ...

  5. 第7.23节 Python使用property函数定义属性简化属性访问的代码实现

    第7.23节 Python使用property函数定义属性简化属性访问的代码实现 一.    背景       在本章前面章节中,我们介绍了类相关的知识,并举例进行了说明,在这些例子中会定义一些形如 ...

  6. 第8.27节 Python中__getattribute__与property的fget、@property装饰器getter关系深入解析

    一. 引言 在<第7.23节 Python使用property函数定义属性简化属性访问的代码实现>和<第7.26节 Python中的@property装饰器定义属性访问方法gette ...

  7. 第10.9节 Python子包的导入方式介绍

    在<第10.8节 Python包的导入方式详解>详细介绍了包的导入方式,子包也是包,子包的导入与包的导入方法上没有本质区别,但二者还是有所不同.本节对照二者的方式介绍子包与包导入的关系: ...

  8. 第10.8节 Python包的导入方式详解

    一. 包导入与模块导入的关系 由于包本质上是模块,其实对模块的许多导入方法都适用于包,但由于包的结构与模块有差异,所以二者还是有些区别的: 对包的导入,实际上就是包目录下的__init__.py文件的 ...

  9. 第10.4节 Python模块的弱封装机制

    一. 引言 Python模块可以为调用者提供模块内成员的访问和调用,但某些情况下, 因为某些成员可能有特殊访问规则等原因,并不适合将模块内所有成员都提供给调用者访问,此时模块可以类似类的封装机制类似的 ...

随机推荐

  1. SVG--D3--血缘关系树

    最近的工作与可视化有关,有展示血缘关系树的需求 ,类似于这样: 碰巧搜到 D3(用于可视化的js库,作者吕之华),瞬间无法自拔,它的树状图功能基于SVG.js ,暴露的可操作入口也简洁恰当,能帮助你快 ...

  2. 对Spark硬件配置的建议

    对于Spark开发人员来说,一个比较普遍的问题就是如何合理的配置Spark的硬件?当然如何合理的对Spark集群进行硬件配置要视情况而定,在这里给出以下建议: 存储系统 在大数据领域,有一句" ...

  3. Python面试题及答案汇总整理(2019版)

    发现网上很多Python面试题都没有答案,所以博主花了很长时间搜集整理了这套Python面试题及答案,由于网上的Python相关面试题大多数都是2019年的,所以我这个也是2019版的,哈哈~ (文末 ...

  4. Hive Join优化

    在阐述Hive Join具体的优化方法之前,首先看一下Hive Join的几个重要特点,在实际使用时也可以利用下列特点做相应优化: 1. 只支持等值连接 2. 底层会将写的HQL语句转换为MapRed ...

  5. 1,认识web

    主要记录黄勇的视频讲解.CSDN:https://blog.csdn.net/nunchakushuang/article/list/1? 他的文档大纲为: video3 拓展1:HTTP与HTTPS ...

  6. JS中的Array之方法(1)

    a=[2,4,5,6,7,90]; [1]. a.toString();  // 返回字符串表示的数组,逗号分隔 "2,4,5,6,7,90" [2]. a.join('||'); ...

  7. 手写atoi、strcpy、strcat

    一:实现atoi函数 1 #include<iostream> 2 3 using namespace std; 4 5 int atoi_my(const char *str) 6 { ...

  8. open系统调用

    /* int open(const char *pathname, int flags, mode_t mode);flag:打开方式,可以man 2 open查看 O_RDONLY    O_WRO ...

  9. win7-64位 jdk安装

    1.jdk安装 jdk安装主要是进行jdk以及jre安装,注意jre需要安装到一个空文件夹内即可. 官网地址:http://www.oracle.com/technetwork/java/javase ...

  10. 查看ceph集群被哪些客户端连接

    前言 我们在使用集群的时候,一般来说比较关注的是后台的集群的状态,但是在做一些更人性化的管理功能的时候,就需要考虑到更多的细节 本篇就是其中的一个点,查询ceph被哪些客户端连接了 实践 从接口上来说 ...