Python快速入门

一、列表

(1)下标访问和for-each访问

python中使用列表访问和在C和Java中就是类似于数组的访问,这里py使用


if __name__ == '__main__':
    a=['a','b','c']

    # 直接打印整个字符列表
    print(a)

    # for-each 循环遍历列表,
    for item in a:
        print(item)
	
	#操作整数列表
    b=[6,5,4,3,2,1]
    # 直接打印整个列表
    print(b)

    # for-each 循环遍历列表,
    for item in b:
        print(item)

	# 打印下标为0的a列表的元素
	print(a[0])

(2)对列表进行CRUD

(Ⅰ)增加元素a

(a)append插入

末尾插入元素使用append函数


if __name__ == '__main__':
    # 有一定元素的列表
    a=[6,5,4]
    # 空列表
    b=[]
    print("增加前,列表为" + str(b))
    b.append(3);
    print("增加3后的列表是"+str(b))
    # 再增加两个元素2和1
    b.append(2)
    b.append(1)
    print("再增加两个元素2和1之后,列表变成:"+str(b))

(b)insert插入

任意下标位置插入元素使用insert函数,制定index位置和value需要插入的元素


if __name__ == '__main__':
    # 有一定元素的列表
    a=[6,5,4]

    print("增加前,列表为" + str(a))
    # 下标为0的位置之前插入元素7
    a.insert(0, 7)
    print("增加7后的列表是"+str(a))
    # 再增加两个元素2和1
    a.insert(len(a)-1, 9)
    print("再增加9之后,列表变成:"+str(a))

(Ⅱ)删除

(a)del语句删除

指定索引位置删除特定元素

if __name__ == '__main__':
    # 有一定元素的列表
    a=[6,5,4]
    print(a)
    del a[0]
    print(a)
(b)pop函数删除元素

pop()和pop(index)重载,pop无参直接就是删除列表最后一个元素,pop(index)可以删除任意位置的元素

不列举代码了,省略不讲

if __name__ == '__main__':
    # 有一定元素的列表
	a=[6,5,4,3,2,1]
    print(a)
    a.pop(0)
    print(a)
    a.pop()
    print(a)
    
(c)remove根据列表中的值来删除元素
if __name__ == '__main__':
    # 有一定元素的列表
    a=[6,5,4,3,2,1]
    print(a)
    a.remove(3)
    print(a)

(Ⅲ)列表排序

sort永久修改,修改之后就是有序,sort返回一个有序副本


if __name__ == '__main__':
    # 有一定元素的列表
    a=[6,5,4,3,2,1]
    # 先查看a的内容顺序
    print(a)
    # sorted返回一个a的有序副本,不修改a
    print(sorted(a))
    # sort永久修改a
    a.sort()
    print(a)

(3)反转列表元素顺序


if __name__ == '__main__':
    # 有一定元素的列表
    a=[23,343,54643,123]
    # 先查看a的内容顺序
    print(a)
    # 顺序颠倒
    a.reverse()
    print(a)
    # 颠倒后再次颠倒就变成原来的顺序了
    a.reverse()
    print(a)

(4)Deep-Copy列表和列表切片

(Ⅰ)负数索引

Python中使用-1索引访问是访问列表最后一个元素,-2是倒数第二个,-3是倒数第三个。代码从略。

(Ⅱ)range函数的使用

range()函数:
range(1,6)表示产生[1,6)之间的所有整数,注意,6那里是开区间,所以只有1~5!!
range(1,100,2)表示产生1~99之间的数列,该数列公差为2,说白了就是先产生一个1,然后每次+2,加到最后那个数是小于100的最大整数。这里跟那个Matlab的语法很相似!!而且这里1只是代表了从1开始到小于100为止,你还可以从100开始,到-100也行,也就是range(100,-100,-1)也是没问题的!!,就是公差别写成1了,要写成-1,不然的话就返回空数列了!!

if __name__ == '__main__':
    # 有一定元素的列表
    a=[23,343,54643,123]
    for it in range(100,-100,-1):
        print(it)

(Ⅲ)列表切片

list2 = list1[:] 表示整个列表深度复制,列表内容一样,列表元素的地址都不一样
list2 = list1[1:9]表示把list1从索引1索引8的所有元素深度复制

list2 = list1[:3] 表示把list1从首元素到索引为2的所有元素深度复制

二、字典(K-V-Mapping)

(1)字典的基本性质

字典就是C++中的map或者HashMap,
键值对,每一个唯一的Key对应一个不一定唯一的Value,也就是Key唯一,Value不一定唯一,在python中,字典就是这种关系的体现,KV之间以:为分隔符,比如

if __name__ == '__main__':
    # 有一定元素的列表
    m1={
        'r':1,
        'g':2,
        'b':3
    }
    # 空字典
    m2 = {}
    print("m1 str = "+str(m1))
    print("m2 str = " + str(m2))
    # 如果key不存在则自动创建一个,并且为改key对应的value赋值
    # m2字典退化成为一个C中的数组了,因为是int对应int
    m2[1]=10 
    m2[2]=20
    print("m2 str = " + str(m2))

(2)字典的3种遍历方法以及删除方法

keys方法得到所有key的,values方法得到所有value,items方法得到所有的K-V键值对,del语句根据字典变量指定的key来删除KV键值对
字典的增加KV的方法在字典的基本性质里面有,就是上面的一个代码块👆



if __name__ == '__main__':
    # 有一定元素的列表
    m1={
        'r':1,
        'g':2,
        'b':3
    }
    # keys方法得到所有key
    for key in m1.keys():
        print("key = " + str(key) + " , value = " + str(m1[key]))

    # values方法得到所有value
    for val in m1.values():
        print("value = " + str(val))

    for k,v in m1.items():
        print("key = " + str(k) + " , value = " + str(v))

    print("删除一对键值对之后")
    del m1['r']
    # 删除一组键值对
    for key in m1.keys():
        print("key = " + str(key) + " , value = " + str(m1[key]))


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿维的博客日记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值