首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python 你不能不知的那些事儿

Why Python

Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。由Guido Van Rossum于1989年底发明,直至1991年公开发行第一个版本。如Perl语言一样,Python源代码同样遵循GPL(GNU General Public License)协议。

Python是易读,易维护,被大量用户欢迎,用途广泛的语言,被称为胶水语言。其设计哲学为“优雅”、“明确”、“简单”。“用一种方法,最好是只有一种方法来做一件事”是Python开发者最初的设想。

1

1

Python 控制语句

if语句,当条件成立时运行语句块。经常与else, elif(相当于else if) 配合使用。

for语句,遍历列表、字符串、字典、集合等迭代器,依次处理迭代器中的每个元素。

while语句,当条件为真时,循环运行语句块。

try语句,与except,finally配合使用处理在程序运行中出现的异常情况。

class语句,用于定义类型。

def语句,用于定义函数和类型的方法。

pass语句,表示此行为空,不运行任何操作。

assert语句,用于程序调试阶段时测试运行条件是否满足。

with语句,Python2.6以后定义的语法,在一个场景中运行语句块。比如,运行语句块前加密,然后在语句块运行退出后解密。

yield语句,在迭代器函数内使用,用于返回一个元素。自从Python 2.5版本以后。这个语句变成一个运算符。

raise语句,制造一个错误。

import语句,导入一个模块或包。

from import语句,从包导入模块或从模块导入某个对象。

import as语句,将导入的对象赋值给一个变量。

in语句,判断一个对象是否在一个字符串/列表/元组里。

2

2

Python 表达式

Python使用y if cond else x表示条件表达式。意思是当cond为真时,表达式的值为y,否则表达式的值为x;

Python区分列表(list)和元组(tuple)两种类型。list的写法是[1,2,3],而tuple的写法是(1,2,3)。list中的元素可以改变,而tuple不能。在某些情况下,tuple的括号可以省略。tuple对于赋值语句有特殊的处理。因此,可以同时赋值给多个变量;

Python使用'(单引号)和"(双引号)来表示字符串。一般,当字符串中出现了双引号,就使用单引号来表示字符串;反之则使用双引号。出现在字符串中的\(反斜杠)被解释为特殊字符,比如\n表示换行符。表达式前加 r 指示Python不解释字符串中出现的 \ 。这种写法通常用于编写正则表达式或者Windows文件路径;

Python支持列表切割(list slices),可以取得完整列表的一部分。支持切割操作的类型有str, bytes, list, tuple等。其语法 ...[left:right] 或为 ...[left:right:stride]。

3

3

Python 函数

Python的函数支持递归、默认参数值、可变参数,但不支持函数重载。为了增强代码的可读性,可以在函数后书写“文档字符串”(Documentation Strings,或者简称docstrings),用于解释函数的作用、参数的类型与意义、返回值类型与取值范围等。可以使用内置函数help()打印出函数的使用帮助。

4

4

对象的方法

对象的方法是指绑定到对象的函数。调用对象方法的语法是instance.method(arguments)。它等价于调用Class.method(instance, arguments)。当定义对象方法时,必须显式地定义第一个参数,一般该参数名都使用self,用于访问对象的内部数据。

5

5

类型

Python采用动态类型系统。在编译时,Python不会检查对象是否拥有被调用的方法或者属性,而是直至运行时,才做检查。所以操作对象时可能会出现异常。不过,虽然Python采用动态类型系统,它同时也是强类型的。Python禁止没有明确定义的操作,比如数字加字符串。

与其它面向对象语言一样,Python同样允许程序员自定义类型。构造一个对象只需要像函数一样调用类型即可,比如,对于前面定义的Fish类型,使用Fish()。类型本身也是特殊类型type的对象(type类型本身也是type对象),这种特殊的设计允许对类型进行反射编程。

Python内置丰富的数据类型。我们将在后续的小课堂中一一说明。

本期,我们仅对Python进行简单的介绍,在下周的《Python你不能不知的那些事儿》中,我们会向大家逐一讲解。感谢您的关注,并期待您持续的关注!下期再见!

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181108G1VHO800?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券