本文目录一览:
- 1、python自学笔记13:元组和字典的操作
- 2、python零基础自学笔记day3(向量和矩阵的索引)
- 3、Python笔记:命令行参数解析
- 4、Python学习笔记
- 5、python自学笔记一 基础输出
python自学笔记13:元组和字典的操作
定义元组(tuple):
t1=(1,2,3,4)#多个数据元组
t2=(1,)#如果元组内只有一个数据,也需要手逗号隔开,否则这个数据将是他本身的类型。
元组的操作:
元组类型数据不支持修改,可查找
查找:
按下标查找:
print(t1[1])
函数查找:
print(t1.index(1))返回对应下标,如果数据不存在,程序将报错
print(t1.count(1))统计数据在元组当中出现的次数
print(len(t1))统计元组当中的数据个数
注意:当元组内嵌套列表数据,可以通过下标的方法对列表数据进行修改如:
t3=(1,2,["a","b"])
t3[2][0]=c #t3的值将变为(1,2,["c","b"])
——————————————————
——————————————————
定义字典(dict)
字典的特点
1:符号为{}
2:数据为键(key)值(value)对形式,每个键值对之间用逗号隔开如:
dict1={"name":"小明","age":18,"gender:男"}
字典的操作:
dict1["name"]="小红"
dict1["id"]=3
如果key存在,将修改其所对应的值。如果不存在,将在字典最后添加该键值对
2.删除数据
del():删除字典或删除字典内的键值对
del dict1["name"] 删除字典内的键值对,如果删除的key不存在,程序将会报错
del(del)删除字典
clear(dict1) 清空字典
3.查找数据
一.按照key进行查找,最后返回相对应的值
二.按函数进行查找:
(1) get(key,默认值):
如果查找的key不存在则返回所写的默认值,如果不写默认值则返回None
dict1={"name":"小明","age":18,"gender:男"}
print(dict1.get("name")) #小明
print(dict1.get("id",110)) # 110
——————————————————
(2) keys():返回字典内的所有key 可用for遍历
print(dict1.keys())
返回 ["name","age","gender"]
for key in dict1.keys():
..print(key)
逐行输出name age gender
——————————————————
(3) values(): 返回字典内的值 可用for遍历
print(dict1.values())
返回["小明",18,"男"]
for value dict1.values():
..print(value)
逐行输出小明 18 男
——————————————————
(4) items():将字典内的数据以元组的形式返回
print(dict1.items()) 可用for遍历
返回[("name","小明"),("age",18),("gender","男")]
for item in dict1.items():
..print(item)
逐行输出 ("name","小明") ("age",18)("gender","男")
——————————————————
遍历字典键值对(拆包) 可在for内使用两个临时变量
dict1={"name":"小明","age":18,"gender:男"}
for key,value in dict1.items():
..print(f"{key}=value")
逐行输出:
name=小明 age=18 gender=男
python零基础自学笔记day3(向量和矩阵的索引)
1.什么是索引?
【1】表示引用向量或者矩阵中的一个数
2.什么是向量的索引?
引用向量中具体的某几个数例如:
[1].给出a向量,a=np.arrary(0,1,2,3,4,5,6,7,8,9)
[2].引用a向量中0-8的数并打印出来:print(a[0:9])
[3].把3后面的数都打印出来:print(a[3:])
[4].把3到最后倒数第二个数都打印出来:print(a[3:-1])//注:其中-1表示的是至倒数第一 个 数,但不能用-0,这样则表示无效
[5].把3前面的数全部打印出来:print(a[:3])
2.注意事项:[1].0:9表示的是比9小的数,而不包括9
3.什么是矩阵的索引?
[1].给出矩阵b,在已经给出a向量的前提下,我们对a进行重塑:b=a.reshape(5,2)得到一个五行两列的矩阵按照0123456789的顺序排列下来
[2].如果想取矩阵中的某个元素--按照几行几列的方法例如:print(b[2,3])这里得到的就是2行3列的一个元素
[3].如果想要得到某一行的元素:print(b[3,:])表示取到第4行的元素
[4].如果想要得到某一列的元素:print(b[:,1])表示取到第2列的元素
Python笔记:命令行参数解析
有些时候我们需要通过命令行将参数传递给脚本,C语言中有个getopt()方法,python中也有个类似的命令行参数解析方法getopt()。python也提供了比getopt()更简洁的argparse方法。另外,sys模块也可以实现简单的参数解析,本文将对这3种命令行参数解析方法简要介绍。
sys.argv是传入的参数列表,sys.argv[0]是当前python脚本的名称,sys.argv[1]表示第一个参数,以此类推。
命令行运行:
可以看到传入的参数通过sys.argv来获取,它就是一个参数列表。
python的getopt与C语言的的getopt()函数类似。相比于sys模块,支持长参数和短参数,并对参数解析赋值。但它需要结合sys模块进行参数解析,语法格式如下:
短参数为单个英文字母,如果必须赋值需要在后面加英文冒号( : ),长参数一般为字符串(相比短参数,更能说明参数含义),如果必须赋值需要在后面加等号( = )。
命令行运行:
注意:短参数(options)和长参数(long_options)不需要一一对应,可以任意顺序,也可以只有短参数或者只有长参数。
argparse模块提供了很多可以设置的参数,例如参数的默认值,帮助消息,参数的数据类型等。argparse类主要包括ArgumentParser、add_argument和parse_args三个方法。
下面介绍这三个函数的使用方法。
argparse默认提供了 -h | --help 参数:
命令行运行:
下面列出部分参数:
下面来添加参数:
命令行运行:
parse_args() 方法用于解析参数,在前面的示例代码中使用parse_args方法来提取参数值,对于无效或者错误的参数会打印错误信息和帮助信息:
命令行运行:
本文介绍了Python的三种命令行参数解析方法sys.argv、getopt和argparse,可以根据自己的需要进行选择,getopt和argparse两种方法相比来说,建议选择argparse,代码量更少更简洁。更详细的使用方法参考官方文档:
--THE END--
Python学习笔记
Python学习笔记_数据排序方法
Python对数据排序有两种方法:下面我们来简单分析下
1. 原地排序:采用sort()方法,按照指定的顺序排列数据后用排序后的数据替换原来的数据(原来的顺序丢失),如:
代码如下:
data1=[4,2,6,432,78,43,22,896,42,677,12]
data1.sort()
data1 #原来的顺序被替换
[2, 4, 6, 12, 22, 42, 43, 78, 432, 677, 896]
2. 复制排序:采用sorted()内置函数,按照指定的顺序排列数据后返回原数据的一个有序副本(原来的顺序保留),如:
代码如下:
data1=[4,2,6,432,78,43,22,896,42,677,12]
data2=sorted(data1)
data1
[4, 2, 6, 432, 78, 43, 22, 896, 42, 677, 12] #原顺序保留
data2
[2, 4, 6, 12, 22, 42, 43, 78, 432, 677, 896] #对副本排序
python自学笔记一 基础输出
print("我是python小白")
终端输出:我是python 。
此种写法只用于了解print函数的作用,在程序中要输出某个内容,一般采用变量的形式,即:
my="小白"
print("我是python%s。" % my)
终端输出:我是python小白。
此处my为变量,小白是被赋值给变量my,并不是my等于变量。定义变量的好处是一个程序可以无限次数的使用它。定义变量还可以为:
a=b=c=2 #2同时赋值给a b c三个变量
a,b c=1,2,3 #a=1 b=2 c=3
注意:变量名区分大小写,不能以数字开头。
name,age,weight="小白",18,65.5
stuid=1
print("我的名字是%s,我的年龄是%d,我的体重是%f公斤,我和学号是%d" % (name,age,weight,stuid))
终端输出:我的名字是小白,我的年龄是18岁,我的体重是65.500000公斤,我的学号是1
print("我的名字是%s,我的年龄是%d岁,我的体重是%.2f公斤,我的学号是%03d" %(name,age,weight,stuid))
终端输出:我的名字是小白,我的年龄是18岁,我的体重是65.50公斤,我的学号是001
printt(f"我的名字是{name},我明年的年龄是{age 1}岁,我的体重是{weight}公斤,我的学号是00{stuid}")
#此种写法为最常用的。
终端输出:我的名字是小白,我明年的年龄是19岁,我的体重是65.5公斤,我的学号是001
%d 为整数型函数值 %03d表示以3位整数显示,不足的以0替代,超出的原样显示。
%f为小数型函数值%.2f表示只显示小数点后两位
%s为字符型函数值 字符串应以双引或单引号括起。