栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python入门

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python入门

1.组合数据类型 列表list

数据有位置顺序

列表是一个可以使用多种类型元素,支持元素的增删查改

表达方式:[DATA1,DATA2…]

以逗号分割

访问直接 [数据位置] 进行访问

#字符转列表
    list("人工智能是未来的趋势")
    ['人', '工', '智', '能', '是', '未', '来', '的', '趋', '势']

#元组转列表
    list(("我",'们','都','很像'))
    ['我', '们', '都', '很像']

#集合转列表
    list({"lct",'hmm','dasg'})
    ['dasg', 'hmm', 'lct']

#特殊的range,经常和for循环进行配合
如果起始数字缺少,默认为0
数字间隔缺少,默认为1

    range(起始数字,中止数字,数字间隔)
    for i in [0,1,2,3,4,5,6]:
        print(i)
    等于
    for i in range(6):
        print(i)

#range转列表
    list(range(1,22,2))
    [1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21]
列表的性质

列表的长度–len(列表)

    ls=[0,1,2,3]
    len(ls)
    4

列表的索引—与同为序列类型的字符串完全相同

变量名[位置编号]

正向索引从0开始

反向索引从-1开始

cars=['baoma','bengci','mashaladi']
print(cars[0])
print(cars[-1])
baoma
mashaladi

列表的切片

变量名[开始位置:结束位置:切片间隔]

正向切片:

cars=['baoma','bengci','mashaladi','xuefulang']
print(cars[:3])  #前三个元素,开始位置缺少,默认为0
print(cars[1:4:2]) #第二个到第四个元素  前后索引差为2
print(cars[:])  #获取整个列表,结束位置缺少,默认取值到最后
print(cars[-4:-2])  #获取前两个元素

['baoma', 'bengci', 'mashaladi']
['bengci', 'xuefulang']
['baoma', 'bengci', 'mashaladi', 'xuefulang']
['baoma', 'bengci']

方向切片:

cars=['baoma','bengci','mashaladi','xuefulang']
print(cars[:-4:-1])  #开始位置缺少,默认为-1
print(cars[::-1])  #获得反向列表

['xuefulang', 'mashaladi', 'bengci']
['xuefulang', 'mashaladi', 'bengci', 'baoma']

列表的操作符

用 list1 + list 2 的形式实现列表的拼接,用的不多

list1=[1,2,3]
list2=[4,5,6,1]
print(list1+list2)

[1, 2, 3, 4, 5, 6, 1]

用 n * list 实现列表的成倍复制,这是初始化列表的一种方式

[0]*10
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
超级重点—列表的增删查改

增加元素

在末尾增加元素–列表.append(待增元素)

在任意位置插入元素–列表.insert(位置编号,待增元素),在位置编号相应圆熟前插入待增元素

在末尾 整体并入另一列表–列表1.extend(列表2),列表1.append(列表2)

删除元素

删除列表 i 位置的元素 列表.pop(位置),不写位置信息,默认删除最后一个元素

删除列表中的第一次出现的待删元素,列表.remove(待删元素)

查找元素

列表中第一次出现待查元素的位置 列表.index(待查元素)

修改元素

通过“ 先索引后赋值” 的方式,对元素进行修改 列表名[位置]=新值

列表的复制

列表.copy()

列表[:]

列表的排序

使用 列表.sort() 对列表进行永久排序,直接在列表上进行操作,无返回值

递减排序 列表.sort(reverse=True)

使用sorted(列表)对列表进行临时排序,原列表保存不变,返回排序后的列表

列表的翻转

使用 列表.reverse()对列表进行永久翻转,直接在列表上进行操作,无返回值

对列表进行遍历

for循环

元组tuple

表达方式: (data1,data2…)

元素不支持修改,一旦定义,内部元素不支持增,删和修改操作,被称为不可修改的列表

其它操作和列表完全一致

元组的常见用处

打包和解包

def f1(x):    #返回x的平方和立方
    return x**2,x**3  #实现打包返回
print(f1(3))
print(type(f1(3)))   # 元组类型

(9, 27)


a,b =f1(3)  #实现解包赋值
print(a)
print(b)

9
27
numbers=[200622,200611,200633]
name=['xiaoming','xiaohong','xiaoqian']
list(zip(numbers,name))

[(200622, 'xiaoming'), (200611, 'xiaohong'), (200633, 'xiaoqian')]

for number,name in zip(numbers,name):  #每次取到一个元组,立刻进行解包
    print(number,name)
    
200622 xiaoming
200611 xiaohong
200633 xiaoqian
字典 dict

映射类型,通过 键-值 的映射实现数据存储和查找

表示方式:{key1:value1,key2:value2…}

通过key来访问,[key]

常规的字典是无序的

字典的要求

字典的键不能重复

字典的键必须是不可变类型,如果键可变,就找不到对应存储的值了

不可变类型:数字,字符串,元组

可变类型:列表,字典,集合(一旦确定,还可以随意增删改)

字典的性质

字典的长度–键值对的个数

字典的索引–通过 字典[键] 的形式来获取对应的值

字典的操作方法

增加键值对-----变量名[新键]=新值

删除键值对----

通过 del 变量名[待删除键]

通过变量名.pop(待删除键)

变量名.popitem() 随机删除一个键值对,并以元组返回删除键值对

修改值

通过先索引后赋值的方法对相应的值进行修改

D.get( key,default) 方法

从字典D中获取键key对应的值,如果没有这个键,就返回default

#统计字符出现频率

s="牛奶奶找刘奶奶买牛奶"
d={}
for i in s:
  d[i]=d.get(i,0)+1
print(d)

{'牛': 2, '奶': 5, '找': 1, '刘': 1, '买': 1}

d.keys() d.values()方法

把字典中所有的键 值 挑出来

d.items()方法及字典的遍历

stus={200611:"xiaoming",200622:"xioahong",200633:"xiaoqiang"}
print(list(stus.items()))


[(200611, 'xiaoming'), (200622, 'xioahong'), (200633, 'xiaoqiang')]

for k,v in stus.items():
    print(k,v)

200611 xiaoming
200622 xioahong
200633 xiaoqiang
集合 set

一系列互不相等元素的集合,无序的

表达方式:{data1,data2…}

可以看作是没有值,或者是值为None的字典

集合的运算

s & t 两个集合共同的元素

s | t 包含两个集合的所有元素

s ^ t 包含两个集合中的非共同元素

s - t 包括在s集合中但不在t集合中的元素

逻辑运算

与: a and b

或: a or b

非: not(a>b)

复合逻辑运算的优先级

非> 与> 或

存在运算

元素 in 列表/字符串

元素 not in 列表/字符串

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/468216.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号