Python day2

第二天啦!!!打卡!!!呀!!!!
没错本人自己呆着也能发疯。

Day2笔记
列表常用函数整理:
‘’‘序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。
Python有6个序列的内置类型,但最常见的是列表和元组。
序列都可以进行的操作包括索引,切片,加,乘,检查成员。
此外,Python已经内置确定序列的长度以及确定最大和最小的元素的方法。
列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。
列表的数据项不需要具有相同的类型
创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。’’’

Python包含以下函数:
序号 函数
1 cmp(list1, list2)比较两个列表的元素(python3.0之后没有了,可使用operator模块中的某些方法来代替)
返回值
如果比较的元素是同类型的,则比较其值,返回结果。
如果两个元素不是同一种类型,则检查它们是否是数字。
如果是数字,执行必要的数字强制类型转换,然后比较。
如果有一方的元素是数字,则另一方的元素"大"(数字是"最小的")
否则,通过类型名字的字母顺序进行比较。
如果有一个列表首先到达末尾,则另一个长一点的列表"大"。
如果我们用尽了两个列表的元素而且所 有元素都是相等的,那么结果就是个平局,就是说返回一个 0。
2 len(list)列表元素个数
3 max(list)返回列表元素最大值
4 min(list)返回列表元素最小值
5 list(seq)将元组转换为列表
Python包含以下方法:

序号 方法
1 list.append(obj)在列表末尾添加新的对象 #无返回值,直接改变原列表
2 list.count(obj)统计某个元素在列表中出现的次数 #返回次数
3 list.extend(seq)在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表) #无返回值,直接改变原列表
4 list.index(obj)从列表中找出某个值第一个匹配项的索引位置 #返回位置索引
5 list.insert(index, obj)将对象插入列表 #无返回值,直接改变原列表
6 list.pop([index=-1])移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
7 list.remove(obj)移除列表中某个值的第一个匹配项 #无返回值,直接改变原列表
8 list.reverse()反向列表中元素 #无返回值,直接改变原列表
9 list.sort(cmp=None, key=None, reverse=False)对原列表进行排序
‘’’ 参数
cmp – 可选参数, 如果指定了该参数会使用该参数的方法进行排序。
key – 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。
reverse – 排序规则,reverse = True 降序, reverse = False 升序(默认)。
返回值
该方法没有返回值,但是会对列表的对象进行排序。’’’

for循环
基本形式:
for iterating_var in sequence:
statements(s)

特殊点:
for … else 表示这样的意思,for 中的语句和普通的没有区别,else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行,while … else 也是一样

while循环
基本形式:
while 判断条件(condition):
执行语句(statements)……

特殊点:
while…else:else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行

函数
函数是整理好的,可重复使用的,用来实现单一或相关联功能的代码段。
Python函数包括内置函数和自定义函数以及匿名函数。
自定义函数:
函数代码块以 def 关键词开头,后接函数标识符名称和圆括号()。
圆括号里面是参数列表,用于接收来自外部的参数值。
函数代码块以冒号开始,并且缩进表示。
以return结束,将需要返回的值传给调用方。不带返回值的return返回None。
基本形式:
def functionname( parameters ):
“函数_文档字符串”
function_suite
return [expression]
函数参数可以是列表等类型。这比c语言指针传值更简便。
参数类型有四种:
必备参数 #必备参数须以正确的顺序传入函数。调用时的数量必须和声明时的一样
关键字参数 #关键字参数和函数调用关系紧密,函数调用使用关键字参数来确定传入的参数值。使用关键字参数允许函数调
#用时参数的顺序与声明时不一致,因为 Python 解释器能够用参数名匹配参数值。
默认参数 #调用函数时,默认参数的值如果没有传入,则被认为是默认值。设置默认值的参数应当放在参数列表的末尾
不定长参数 #你可能需要一个函数能处理比当初声明时更多的参数。这些参数叫做不定长参数,和上述2种参数不同,声明时不会命名

匿名函数:
lambda函数的语法只包含一个语句,如下:

lambda [arg1 [,arg2,…argn]]:expression

‘’'全局变量和局部变量
定义在函数内部的变量拥有一个局部作用域,定义在函数外的拥有全局作用域。

局部变量只能在其被声明的函数内部访问,而全局变量可以在整个程序范围内访问。调用函数时,所有在函数内声明的变量名称都将被加入到作用域中’’’

导入模块(包括如何导入自己写的模块)

#用import可以导入外部库或函数包,在使用该模块中的函数时应该写为 模块.函数

#from…import 语句
Python 的 from 语句让你从模块中导入一个指定的部分到当前命名空间中。语法如下:

from modname import name1[, name2[, … nameN]]

#from…import* 语句
把一个模块的所有内容全都导入到当前的命名空间也是可行的,只需使用如下声明:

from modname import *

也可用import…as…将导入的库重命名 例:import numpy as np

网上找资料是看到的一些知识点,记录!

一些好用的函数与关键字 (1) 命名空间和作用域
变量是拥有匹配对象的名字(标识符)。命名空间是一个包含了变量名称们(键)和它们各自相应的对象们(值)的字典。

一个 Python 表达式可以访问局部命名空间和全局命名空间里的变量。如果一个局部变量和一个全局变量重名,则局部变量会覆盖全局变量。

每个函数都有自己的命名空间。类的方法的作用域规则和通常函数的一样。

Python 会智能地猜测一个变量是局部的还是全局的,它假设任何在函数内赋值的变量都是局部的。

因此,如果要给函数内的全局变量赋值,必须使用 global 语句。

global VarName 的表达式会告诉 Python, VarName 是一个全局变量,这样 Python
就不会在局部命名空间里寻找这个变量了。

例如,我们在全局命名空间里定义一个变量 Money。我们再在函数内给变量 Money 赋值,然后 Python 会假定 Money
是一个局部变量。 然而,我们并没有在访问前声明一个局部变量 Money,结果就是会出现一个 UnboundLocalError
的错误。用global声明一下就好了。

(2)dir()函数 dir() 函数一个排好序的字符串列表,内容是一个模块里定义过的名字。

返回的列表容纳了在一个模块里定义的所有模块,变量和函数。

globals() 和 locals() 函数 根据调用地方的不同,globals() 和 locals()
函数可被用来返回全局和局部命名空间里的名字。

如果在函数内部调用 locals(),返回的是所有能在该函数里访问的命名。

如果在函数内部调用 globals(),返回的是所有在该函数里能访问的全局名字。

两个函数的返回类型都是字典。所以名字们能用 keys() 函数摘取。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值