1:续行符

在Python中,一般是一行一个语句。一个过长的语句可以使用反斜杠( \ )分解成几行。

有两种例外情况,一个语句不使用反斜线也可以跨行。在使用闭合操作符时,单一语句可以跨多行,例如:在含有小括号、中括号、花括号时可以多行书写。另外就是三引号包括下的字符串也可以跨行书写。如下例:

>>> alist = [1,

... 2]

>>> alist

[1, 2]

2:表达式和语句

表达式:某件事情,语句:做某件事情。

表达式有算术表达式,函数表达式等。语句有赋值语句,print语句,import语句、条件语句、循环语句等。

语句使用关键字来组成命令,类似告诉解释器一个命令。你告诉Python做什么,它就为你做什么。

表达式没有关键字。它们可以是使用数学运算符构成的算术表达式,也可以是使用括号调用的函数。

3:语句块

Python中,冒号(:)用来标识语句块的开始,块中的每一个语句都是缩进的(缩进量相同),当回退到和已经闭合的块一样的缩进量时,就表示当前块已经结束了。

也可以使用Tab键进行缩进,但是标准且推荐的方式是只用空格,特别是使用4个空格。

4:序列解包

将多个变量同时赋值的方法称为序列解包(sequence unpacking)。因为采用这种方式赋值时,等号两边的对象都是元组。

>>> 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

5:Python文件布局

用模块来合理组织Python 代码是简单又自然的方法。应该建立一种统一且容易阅读的结构,并将它应用到每一个文件中去。下面就是一种非常合理的布局:

# (1) 起始行(Unix)

# (2) 模块文档

# (3) 模块导入

# (4) 变量定义

# (5) 类定义

# (6) 函数定义

# (7) 主程序

6:主程序

当模块被导入时class语句(类定义语句)会被执行, 类也就会被定义。def 语句(函数定义语句)会被执行,函数也就都会定义好。

无论模块是被别的模块导入还是作为脚本直接执行,都会执行这部分代码。

主程序中的代码通常包括变量赋值, 类定义和函数定义,随后检查__name__来决定是否调用另一个函数(通常调用main()函数)来完成该模块的功能。

时刻记住一个事实,那就是所有的模块都有能力来执行代码。最高级别的Python
语句,也就是, 那些没有缩进的代码行在模块被导入时就会执行, 不管是不是真的需要执行。由于有这样一个“特性”,比较安全的写代码的方式就是除了那些真正需要执行的代码以外,几乎所有的功能代码都在函数当中。

很多项目都是一个主程序,由它导入所有需要的模块。所以请记住,绝大部分的模块创建的目的是为了被别人调用而不是作为独立执行的脚本。

Python有一种方法能在运行时检测该模块是被导入还是被直接执行。__name__
系统变量就是这种机制。如果模块是被导入, __name__
的值为模块名字;如果模块是被直接执行,__name__
的值为 '__main__'。

7:比较运算符连接

Python支持一个表达式进行多种比较操作,也就是多个比较操作可以在同一行上进行,求职顺序为从左到右,比如:

>>> 3 < 4 < 7             #same as ( 3 < 4 ) and ( 4 < 7 )
True >>>4 > 3 == 3 # same as ( 4 >3 ) and ( 3 == 3 )
True

本质上,多个比较操作是由多个隐式的and连接起来的多个表达式。



《Python核心编程》

Python基础:00概述的更多相关文章

  1. Day1 Python基础学习——概述、基本数据类型、流程控制

    一.Python基础学习 一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编 ...

  2. Python基础00 教程

    Python: 简明 Python 教程 廖雪峰Python3教程 Python快速教程 (手册) 爬虫: 汪海的实验室:Python爬虫入门教程 静觅: Python爬虫学习系列教程 Flask: ...

  3. 【Python全栈笔记】00 12-14 Oct Linux 和 Python 基础

    Linux 基础认识 更加稳定,安全,开源 设置好ssh协议后可以通过windows系统连接Linux,基于ssh协议进行通信 '/' 为根目录 cd / -> 切换到根目录 ls -lh 列出 ...

  4. Python基础随笔①(MOOC)

    @ 目录 前言 概述 主体 1.基本语法元素 ①实例:温度转换 要求 分析 代码部分 运行结果 ②作业:Hello World的条件输出 要求 分析 代码 运行结果 ③作业:数值运算 要求 分析 代码 ...

  5. Python基础+Pythonweb+Python扩展+Python选修四大专题 超强麦子学院Python35G视频教程

    [保持在百度网盘中的, 可以在观看,嘿嘿 内容有点多,要想下载, 回复后就可以查看下载地址,资源收集不易,请好好珍惜] 下载地址:http://www.fu83.cc/ 感觉文章好,可以小手一抖 -- ...

  6. python基础知识理解

    一.概述 看了一天的python基础语法,基本对python语法有了一个大概的了解(其实之前断断续续也看过python),学习网址:Python 基础教程.因为之前我学过C++,因此在学习python ...

  7. Python基础:新式类的属性访问

    一.概述 二.准备工作 1.讨论对象 2.名词解释 三.实例绑定的属性访问 1.获取属性 一般规则 参考源码 示例验证 2.设置属性 一般规则 参考源码 示例验证 3.删除属性 一般规则 参考源码 示 ...

  8. Python基础:函数式编程

    一.概述 Python是一门多范式的编程语言,它同时支持过程式.面向对象和函数式的编程范式.因此,在Python中提供了很多符合 函数式编程 风格的特性和工具. 以下是对 Python中的函数式编程 ...

  9. Python基础:序列(列表、元组)

    一.概述 列表(list)是由一个个 Python对象 组成的序列.其中,Python对象 可以是任何类型的对象,包括 Python标准类型(数值.字符串.列表.元组和字典)以及 用户自定义类型(类) ...

  10. Python基础:序列(字符串)

    一.概述 字符串 类似于C中的字符数组(功能上更像C++中的string),它是由一个个 字符 组成的序列.与C/C++不同的是,Python中没有 字符 这个类型,而是用 长度为1的字符串 来表示字 ...

随机推荐

  1. Django项目:CRM(客户关系管理系统)--19--11PerfectCRM实现King_admin分页显示条数

    登陆密码设置参考 http://www.cnblogs.com/ujq3/p/8553784.html list_per_page = 2 #分页条数 list_per_page = 2 #分页条数 ...

  2. UnhandledPromiseRejectionWarning: SequelizeConnectionError: Client does not support authentication protocol requested by server; consider upgrading MySQL client

    UnhandledPromiseRejectionWarning: SequelizeConnectionError: Client does not support authentication p ...

  3. Hdu 1384(差分约束)

    题目链接 Intervals Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)T ...

  4. Visifire For WPF 图表控件 如何免费

    可能用WPF生成过图表的开发人员都知道,WPF虽然本身的绘图能力强大,但如果每种图表都自己去实现一次的话可能工作量就大了, 尤其是在开发时间比较紧的情况下.这时候有必要借助一种专业的图表工具. Vis ...

  5. Hibernate: insert into xxx (name) values (?)但是数据库中没有数据

    学习hibernate 控制台提示 但数据库中没有任何数据被插入 同样的代码,参考例程中就有数据被插入 比较无解,删除部分代码,红框中的部分,运行一下,再贴回去,就好了

  6. MySQL数据库起步 关于数据库的基本操作(更新中...)

    mysql的基本操作 连接指定的服务器(需要服务器开启3306端口) mysql -h ip地址 -P 端口号 -u 账号 -p 密码 删除游客模式 mysql -h ip地址 -P 端口号 -u 账 ...

  7. day38 07-Spring框架Bean的时候方式

    Spring是自动帮我们创建对象的,有几种创建Bean的方式呢? 构造方法实例化:(默认无参数)其实就是反射new Instance(). 静态工厂实例化: 实例工厂实例化: 一般不会改变它实例化的方 ...

  8. pytest 用 @pytest.mark.usefixtures("fixtureName")或@pytest.fixture(scope="function", autouse=True)装饰,实现类似setup和TearDown的功能

    conftest.py import pytest @pytest.fixture(scope="class") def class_auto(): print("&qu ...

  9. checkbox的全选,取消全选,获得选中值

    <html> <head> <title>jq全选以及获得选中项的值</title> <meta charset="utf-8" ...

  10. 【Codeforces Round #430 (Div. 2) B】Gleb And Pizza

    [链接]点击打开链接 [题意] 在这里写题意 [题解] 根据圆心到原点的距离这个东西判断一下圆在不在那个环里面就好 [错的次数] 0 [反思] 在这了写反思 [代码] #include <cst ...