微信公众号:码农充电站pro

个人主页:https://codeshellme.github.io

控制复杂性是计算机编程的本质。

—— Brian Kernighan

了解了如何编写第一个Python 程序,接下来,我们来学习更多的Python 知识。

本篇内容,我们来介绍一些Python 基础概念

1,注释

每种编程语言中都有注释,代码注释的主要作用是解释某段代码的含义,以供其他维护人员参考。Python 解释器在遇到注释时,会将其忽略,而不会当做代码来执行。

注释可分为单行注释多行注释

Python 中使用符号# 进行单行注释,使用三单引号''' 或 三双引号""" 来进行多行注释。如下:

#! /usr/bin/env python3

# 这是单行注释
# 这也是单行注释 '''
这是多行注释1
这是多行注释2
''' """
这是多行注释3
这是多行注释4
""" print('hello, python')

2,标识符

标识符就是标识某种东西的名字,例如变量名函数名类名 等都是标识符。

标识符的不能随便命名,是有规定的:

  • 标识符的第一个字符必须是英文字母下划线_
  • 标识符除第一个字符外的其它字符可以是英文字母下划线_,或数字
  • 标识符对大小写敏感,例如aA 不是同一个标识符

注意:虽然 python3.x 支持中文作为标识符,但一般我们并不会这样做。

Python 保留字

Python 保留字是Python 中内置的一些标识符,其代表特殊含义,我们不能使用这些保留字作为自己的标识符。

Python3 中有33 个保留字,可以用keyword 模块来查看:

>>> import keyword
>>> print(len(keyword.kwlist))
33
>>> print(keyword.kwlist)
['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
>>>

提示:import 关键字用于引入模块。

3,代码行

C/C++Java 语言中,一句代码的结束必须以分号; 来作为结束标识。

在Python 中,一行内也可以写多句代码,每句代码以分号; 结束,如下:

# 最后一句后边的分号可写,可不写
print(123); print(456); print(789)

一般情况下并不会在一行内写多句代码,我们推荐一行只写一句代码,这样有利于代码维护代码美观,如下:

print(123)
print(456)
print(789)

注意:

在Python 代码中,如果一行内只有一句代码,在代码结尾可以不写分号;

而且,这也是推荐的做法。

4,代码块与缩进

在同一代码块中的语句,代表同一层次的代码分组,会从上到下依次执行。

C/C++Java 语言中,写在大括号{} 内的代码,表示同一代码块,例如:

if (i > 5) {
...
} else {
...
}

而在Python 中,并不使用大括号{} 来表示代码块,而是使用缩进 来表示代码块,在同一缩进层次的多行代码,是同一代码块,这也是Python 的特色。

缩进可以是两个空格或者四个空格(Tab),在同一个Python 文件中,缩进必须是统一的,要么都是两个空格,要么都是四个空格,而不能混用。如下:

if i > 5:
print(123)
print(456)
else:
print(789)

如果缩进不统一,将会报错,例如下面的代码:

if i > 5:
print(123)
print(456) # 这里是3 个空格
else:
print(789)

会报如下错误:

IndentationError: unindent does not match any outer indentation level

建议:推荐使用四个空格的缩进。

5,多行语句

如果一句代码比较长,可以使用反斜杠\,将一句代码写在多行,如下:

s = "这个字符串很长,\
被写在了多行" i = 1
j = 2
y = 3 n = i + \
j + \
y

(完。)


推荐阅读:

Python 简明教程 —— 0,前言

Python 简明教程 —— 1,搭建Python 环境

Python 简明教程 —— 2,第一个Python 程序


欢迎关注作者公众号,获取更多技术干货。

Python 简明教程 --- 3,Python 基础概念的更多相关文章

  1. Python 简明教程 --- 8,Python 字符串函数

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 好代码本身就是最好的文档.当你需要添加一个注释时,你应该考虑如何修改代码才能不需要注释. -- St ...

  2. Python 简明教程 --- 4,Python 变量与基本数据类型

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 任何一个人都会写出能够让机器理解的代码,只有好的程序员才能写出人类可以理解的代码. -- Marti ...

  3. Python 简明教程 --- 5,Python 表达式与运算符

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 靠代码行数来衡量开发进度,就像是凭重量来衡量飞机制造的进度. -- Bill Gates 目录 1, ...

  4. Python 简明教程 --- 6,Python 控制流

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io Talk is cheap, show me the code. -- Linus Torvalds ...

  5. Python 简明教程 --- 7,Python 字符串

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 过早的优化代码是罪恶之源. -- Donald Knuth 目录 无论哪种编程语言,字符串处理都是最 ...

  6. python简明教程

    Python简明教程 MachinePlay关注 0.7072018.09.26 01:49:43字数 2,805阅读 9,287 Python一小时快速入门 1.Python简介   pylogo. ...

  7. Python 简明教程 --- 18,Python 面向对象

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 代码能借用就借用. -- Tom Duff 目录 编程可分为面向过程编程和面向对象编程,它们是两种不 ...

  8. Python 简明教程 --- 14,Python 数据结构进阶

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 如果你发现特殊情况太多,那很可能是用错算法了. -- Carig Zerouni 目录 前几节我们介 ...

  9. Python 简明教程 --- 15,Python 函数

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 测试只能证明程序有错误,而不能证明程序没有错误. -- Edsger Dijkstra 目录 本节我 ...

随机推荐

  1. HTML+CSS教程(六)浮动-float+定位-position+居中问题

    一.浮动(float)1.文档流:是指盒子按照 html 标签编写的顺序依次从上到下,从左到右排列,块元素占一行,行内元素在一行之内从左到右排列,先写的先排列,后写的排在后面,每个盒子都占据自己的位置 ...

  2. CTO的窘境

    做CTO太难了,常年的coding思维让你早已与世隔绝,CTO有很好的技术方案,但CEO.CFO等O听不懂是很麻烦的事.总得来说,做CTO一定要技术背景出身,有很强的沟通能力和情商,敏锐的洞察力和决断 ...

  3. tensorflow1.0 模型的保存与加载

    import tensorflow as tf import numpy as np # ##Save to file # W = tf.Variable([[4,5,6],[7,8,9]],dtyp ...

  4. 使用vue.js封装一个包含图片的跑马灯组件

    初衷: 学习完Vuejs后,来准备练习仿写一下老东家的门户页面,主要是为了熟悉一下常用插件的使用,比如video.js,wow.js,swiper等等:而其中涉及到一个包含图片跑马灯组件,大概长这样( ...

  5. 2、flink入门程序Wordcount和sql实现

    一.DataStream Wordcount 代码地址:https://gitee.com/nltxwz_xxd/abc_bigdata 基于scala实现 maven依赖如下: <depend ...

  6. linux php 安装 openssl扩展

    (1.生成 openssl.so 文件)#进入扩展目录cd /data/soft/php-5.5.38/ext/openssl#生成 configure 文件/usr/local/php/bin/ph ...

  7. c++ 更新 performance counter 数据,错误码 87

    ERROR_INVALID_PARAMETER 87 (0x57) The parameter is incorrect. 很可能是该送 ULONG 的送了 ULONGLONG,vise versa

  8. 播放声音 (c++) (windows)

    自己看自己看自己看自己看自己看自己看 在<windows.h>中 一:BOOL WINAPI MessageBeep (_in UINT uType ); 播放一个波形文件 (也就是wac ...

  9. vue2.x学习笔记(三十二)

    接着前面的内容:https://www.cnblogs.com/yanggb/p/12684060.html. 深入响应式原理 vue最独特的特性之一,是其非侵入式(耦合度低)的响应式系统:数据模型仅 ...

  10. Vue Router路由守卫妙用:异步获取数据成功后再进行路由跳转并传递数据,失败则不进行跳转

    问题引入 试想这样一个业务场景: 在用户输入数据,点击提交按钮后,这时发起了ajax请求,如果请求成功, 则跳转到详情页面并展示详情数据,失败则不跳转到详情页面,只是在当前页面给出错误消息. 难点所在 ...