• 又是快乐学习python的一天


    1List内部功能

    (1)extend:扩展

    Eg

    Li=[1,2,3]

    Li.extend([22,33])

    Print(li)

    (2)insert:在指定位置插入值

    eg

    Li.insert(0,’alice’)

    (3)pop():可以指定弹出一个数,也可以默认弹出最上面的数字,可以获取返回值

    Remove():只能指定下标移除一个值,不能获得返回值

    (4)reverse:反转,将原来的字符串顺序颠倒顺序

    2、元组内部功能:count(记数一个list中某个值有几个个数),index(索引)

    3、字典

    1(fromkeys这个功能,可以把这些键的值都改成v1)

    Dic=dict(k1=’v1’,k2=’v2’)

    New_dict=dic.fromkeys([‘k1’,’k2’,’k3’],’v1’)

    Print(new_dict)

    2)使用for循环来输出字典里的键、值、键值对

    For k in dic.keys():

    Print(keys)

    For v in dic.values():

    Print(values)

    For k,v in dic.items():
    print(k,v)

    (3)pop:字典里的pop需指定拿走哪个元素,因为字典无序

    (4)update:更新字典

    Dic.update({‘k3’:123})

    Print(dic)

    $小练习题:

    有一个数字列表[11,22,33,44,55,66,77,88,99],将其中大于66的数字放入一个key中,将小于等于66的数字放入另一个key中。

    (字典里面可以放列表)

    Li=[11,22,33,44,55,66,77,88,99]

    Dic={}

    L1=[]

    L2=[]

    For i in Li:

    If i>=66:

    L1.append()

    Else:

    L2.append()

    Dic[‘k1’]=L1

    Dic[‘k2’]=L2

    Print(Dic)

     

    ***另一种做法

    li=[11,33,44,55,66]
    dic=collections.defaultdict(list)
    for i in li:
    if i>=55:
    dic['k1'].append(i)
    else:
    dic['k2'].append(i)
    print(dic)

    $大作业(列表+字典):

    购物商城:展示商品,价格

    买,加入购物车

    付款,钱不够应该怎么处理

    goods={'肥皂':3,'面包':4,'苹果':3}
    shopcar=[]
    p=0
    money=10
    print('本商店有如下商品;')
    for k,v in goods.items():
        print(k,v)
    while 1:
        r = input("请输入你想买的物品或者选择q退出:")
        if r!='q':
            shopcar.append(r)
            p=p+goods[r]
        else:
            break
    if p>money:
        print('啊哦,钱不够哦!')
    else:
        print('您的购物金额为:%d' % p)

     

    新知识:

    Set:集合(无序且不重复的元素集合),优点是访问速度快,且天生不会重复

    (1)Difference():找两个集合的不同之处,可以返回结果

    集合的括号里面可以放参数也可以不放

    s1=set()
    s2=set(['alex','eric'])
    s3=s2.difference()
    print(s3)

    (2)remove()和pop():

    Eg1

    S2=set([‘eric’,’alice’])

    Print(S2.pop()) #pop有返回值并且不用指定下标

    Eg2

    S2=set[‘alice’,’eric’]

    Print(S2.remove(‘alice’)) #返回none即没有返回值,而且必须指定下标

     

    $练习:有两个数据库,原数据库里有,新数据库里无:则要删除原来数据库里的东西;

    原数据库里无,新数据库里有:原来数据库要新加入;原来数据库和新数据库均有:则要更新(difference和symmetric.difference的区别,前者是去前一个集合遍历找到和后一个集合不同的元素,并返回;后者是找到 两个集合里的不同元素并返回。)

    产生三个列表:

    要更新的数据:update_set

    要删除的数据:delete_set

    要添加的数据:add_set

    old_dict={'k1':123,'k2':23,'k4':1}
    new_dict={'k1':12,'k2':90,'k3':55}
    old=set(old_dict.keys())
    new=set(new_dict.keys())
    update_set=old.intersection(new)
    delete_set=old.symmetric_difference(update_set)
    add_set=new.symmetric_difference(update_set)
    print(update_set)
    print(delete_set)
    print(add_set)

     

     

     

    装饰器:是一种函数,只不过该函数可以具有特殊的含义,装饰器用来装饰函数或类,使用装饰器可在函数执行前或后执行相应操作

     

  • 相关阅读:
    R语言画图教程之盒形图
    赵雅智_SimpleCursorAdapter
    java File文件操作共用方法整理
    Swift开发教程--怎样播放图片动画
    N!
    逻辑斯蒂有限增长模型
    Android app身体质量指数(BMI)
    Golang-interface(二 接口与nil)
    putty software caused connection abort
    卖了5个月水果之后再看互联网思维
  • 原文地址:https://www.cnblogs.com/zyycumt/p/11529883.html
Copyright © 2020-2023  润新知