python基础学习
Python是一种跨平台的编程语言,这意味着它可以在Windows,MacOS,Linux等多种平台上运行,甚至已经移植到Java和.NET虚拟机。它是免费和开源的。
即使当今的大多数Linux和Mac已经预装了Python,但该版本可能已过时。因此,安装最新版本始终是一个好主意。
说明:作者根据https://cainiaoplus.com/进行学习
下面学习过程我直接用linux python 来编写了
Python 关键字和标识符
关键字是Python中的保留字。 |
False | await | else | import | pass |
---|---|---|---|---|
None | break | except | in | raise |
True | class | finally | is | return |
and | continue | for | lambda | try |
as | def | from | nonlocal | while |
assert | del | global | not | with |
async | elif | if | or | yield |
Python标识符
标识符是给诸如类,函数,变量等实体的名称。它有助于将一个实体与另一个实体区分开。
编写标识符的规则
- 标识符可以是小写字母(a 至 z)或大写字母(A 至 Z)或数字(0 至 9)或下划线(_)的组合。myClass,var_1,var_name_1, print_this_to_screen 都是有效的。
- 标识符不能以数字开头。1variable 是无效的,但 variable1 是有效的。
- 关键字不能用作标识符。
要记住的事情
Python 是 区分大小写 的语言。这意味着 Variable 和 variable 是两个不同的变量。同时,也建议大家,在实际编程中,始终命名有意义的标识符。
虽然,c = 10 也是有效的。但是使用 count = 10 看起来会更有意义,并且即使您在经过一段长时间的间隔之后查看代码,也更容易弄清楚它的作用和它所代表的意义。
可以使用下划线分隔多个单词进行命名,例如:this_is_a_long_variable
python 语句
在Python中,语句的结尾用换行符标记。但是我们可以使一条语句扩展到具有多行连续字符(\)的多行。例如:
a = 1 + 2 + 3 + \ |
这是显式的行继续。在Python中,在圆括号(),方括号[]和花括号{}中暗含换行符。例如,我们可以将上述多行语句实现为 []和{}也是如此
Python缩进
大多数编程语言(例如C,C ++,Java)都使用大括号{}来定义代码块。而Python使用缩进
代码块(函数的主体,循环的主体等)以缩进开始,以第一条未缩进的行结束。缩进量取决于您,但是在整个块中缩进量必须保持一致。
通常,四个空格用于缩进,并且优先于制表符。
缩进不正确将导致IndentationError。
直接推进到集合的字面量集
字面量集
有四种不同的字面量集合:列表字面量,元组字面量,字典字面量 和 集合字面量。
eg:
fruits=["apple", "banana" ,"orange"]#这是一个列表 |
Python 列表(List)
在Python编程中,通过将所有项目(元素)放在方括号[]中并用逗号分隔来创建列表。
它可以具有任意数量的项目,并且它们可以具有不同的类型(整数,浮点数,字符串等)
# 空 list |
同样,一个列表甚至可以将另一个列表作为项目。这称为嵌套列表。
# 嵌套 list |
访问列表中的元素
my_list =['G','0','u','f','3','n'] |
如何在Python中切片列表?
my_list = ['p','r','o','g','r','a','m','i','z'] |
通过将索引考虑到如下所示的元素之间,切片可以得到最佳的可视化效果。如果我们想要访问一个范围,我们需要两个下标来从列表中分割那部分。(冒号左边闭右边开{ (] }))
如何更改或添加元素到列表?
List是可变的,也就是说,它们的元素可以更改,而不像string或tuple。
我们可以使用赋值运算符(=)更改一个项目或一系列项目。
my_list =['G','0','u','f','3','n'] |
我们可以使用append()方法将一个项目添加到列表中,或者使用extend()方法将多个项目添加到列表中。
my_list =['G','0','u','f','3','n'] |
此外,我们可以使用insert()方法在需要的位置插入一个项,或者通过将多个项压缩到列表的一个空切片中来插入多个项
odd = [1, 9] |
如何从列表中删除或删除元素?
我们可以使用关键字del从列表中删除一个或多个项。它甚至可以完全删除列表。
my_list =['G','0','u','f','3','n'] |
我们可以使用remove()方法删除给定项目,也可以使用pop()方法删除给定索引处的项目。
如果未提供索引,则pop()方法将删除并返回最后一项。这有助于我们将列表实现为堆栈(先进先出数据结构)。
我们还可以使用该clear()方法清空列表。
my_list =['G','0','u','f','3','n'] |
Python列表方法
它们以list.method()方式访问。上面已经使用了某些方法。
my_list =['G','0','u','f','3','n',6,6] |
列表理解:创建新列表的优雅方式
列表理解是从Python现有列表中创建新列表的一种简洁明了的方法。
列表理解包含一个表达式,后跟方括号内的for语句。
这是一个列出每项增加2的幂的示例。
Python 元组(Tuple)
创建一个元组
通过将所有项目(元素)放在括号内()(以逗号分隔)来创建元组。括号是可选的,但是,使用括号是一个好习惯。
元组可以具有任意数量的项,并且它们可以具有不同的类型(整数,浮点数,列表,字符串等)。
也可以在不使用括号的情况下创建元组。这称为元组包装。
用一个元素创建一个元组有点特殊。
只有一个元素的元组,括号内仅包含一个元素是不够的。我们将需要一个逗号结尾来表明它实际上是一个元组。
my_tuple=("Gu0f3n")#创建一个元组 |
访问元组元素
我们可以通过多种方式访问元组的元素。
1.索引
我们可以使用索引运算符[]访问索引从0开始的元组中的项目。
因此,具有6个元素的元组将具有从0到5的索引。尝试访问元组之外的元素(例如6、7 …)将引发IndexError。
索引必须是整数;因此我们不能使用float或其他类型。如果使用会导致TypeError。
同样,使用嵌套索引访问嵌套元组,如下面的示例所示。
my_tuple =(1,2,2,3,4,5,6) |
2.负索引
Python允许对其序列进行负索引。
索引-1表示最后一项,-2表示倒数第二项,依此类推。
my_tuple=("G","u","0","f","3","n") |
3.切片
我们可以使用切片运算符-冒号“:”访问元组中的一系列项目。
和列表差不太多【)
my_tuple=("G","u","o","f","3","n",6,6,6) |
通过考虑索引位于元素之间,可以最好地可视化切片,如下所示。因此,如果要访问范围,则需要将元组中的部分切片的索引。
后面一些类型像字典 元组和列表都大差不差 所以这章先到这里
Python pass 语句
在本文中,您将学习pass语句。 它用作在后面实现函数,循环等的占位符。
什么是Python中的pass语句?
在Python编程中,pass语句为空语句。在Python中,注释和pass语句之间的区别在于,尽管解释器完全忽略注释,而pass不会被忽略。
但是,执行传递时没有任何反应。结果为无操作(NOP)。
pass语法
pass |
我们通常将其用作占位符。
假设我们有一个尚未实现的循环或函数,但我们想在将来执行实现它。他们不能有一个空的主体,解释器将给出错误。因此,我们使用该pass语句构造一个不执行任何操作的主体。
'''pass只是一个占位符, |
Python 函数
在本文中,您将了解函数、函数是什么、函数的语法、构成和类型。另外,您还将学习如何用Python创建函数。
Python中的函数是什么?
在Python中,函数是一组执行特定任务的相关语句。
函数有助于将我们的程序分解为较小的模块。随着我们的项目越来越大,函数使其变得更加有组织和易于管理。
此外,它避免了重复写相同的代码,函数使代码可重复使用。
函数语法
def function_name(parameters): |
上面显示的是由以下组件组成的函数定义。
- def标记函数头开始的关键字。
- 用于唯一标识函数的函数名称。函数命名遵循在Python中编写标识符的相同规则。
- 通过其将值传递给函数的参数。它们是可选的。
- 冒号(:)标记函数头的结尾。
- 可选的文档字符串(docstring),用于描述函数的函数。
- 组成函数体的一个或多个有效python语句。语句必须具有相同的缩进级别(通常为4个空格)。
- 可选的return语句,用于从函数返回值。
函数示例
def greet(name): |
如何在python中调用函数?
定义函数后,我们可以从另一个函数,程序甚至Python提示符中调用它。要调用函数,我们只需键入带有适当参数的函数名称即可。
return 语句
return语句用于退出函数并返回到调用函数的位置。
回语法
return [expression_list] |
该语句可以包含一个表达式,该表达式将被求值并返回值。如果该语句中没有表达式,或者return语句本身不存在于函数中,则该函数将返回None对象。
例如:
print(greet("May")) |
None是返回值,因为greet()函数直接打印名称,并且没有使用return语句。
def absolute_value(num): |
2 |
Function如何在Python中工作?
变量的作用域和生命周期
变量的作用域是程序中可以识别该变量的部分。从函数外部看不到在函数内部定义的参数和变量。因此,它们具有本地作用域。
变量的生命周期是变量在内存中退出的时间。函数内部变量的生命周期与函数执行的时间一样长。
一旦我们从函数返回,它们就会被销毁。因此,函数无法记住其先前调用中的变量值。
这是一个示例,用于说明函数内部变量的生命周期。
示例
def my_func(): |
输出结果
函数内部值: 10 |
在这里,我们可以看到x的初始值为20。即使函数my_func()将x的值更改为10,它也不会影响函数外部的值。
这是因为函数内部的变量x与函数外部的x变量不同。尽管它们具有相同的名称,但是它们是两个具有不同作用域的不同变量。
另一方面,从外部可以看到函数外部的变量。它们具有全局作用域,也就是函数内外部都可以使用该全局变量。
我们可以从函数内部读取这些值,但不能更改(写入)它们。如果要在函数外部修改变量的值,必须使用关键字global,将它们声明为全局变量。
函数类型
基本上,我们可以将函数分为以下两种类型:
- 内置函数-Python内置的函数。
- 用户定义的函数 -用户自己定义的函数。