• python中的坎坷之函数、集合


    函数

    作用:实现一个功能,函数理解成一个工具,遇到问题把这个工具拿来用

    优点:函数更方便,复用,可以在多个场景下用

    1、带参数的函数

    name='lzs-nice'
    nane.split('-')   ##以-进行分割
    

    2、带返回值的函数

    def add_sum(num):           ##定义一个函数,并带一个参数
        count=0
        for i in range(1,num):
            count+=1
            return count
        res=add_sum(101)    ##计算1到100相加的结果
    

    集合

    集合:一个集合里有一组数据
    大括号内用逗号开多个元素,集合(哈希表)是无序的,去重

    ##集合和集合之间会有:交集&,并集|,补集^,差集-
    s1={'lzs','nice','good'}
    s2={'lalala','lzs','huhuhu'}
    print(s1&s2)    ##lzs
    print(s1|s2)    ##lzs nice good lalala huhuhu
    print(s1^s2)    ##nice good lalala huhuhu
    print(s1-s2)    ##nice good
    

    集合的内置方法:

    s={'lzs','nice','huhuhu','hahaha'}
     ##往数组里添加数据
    s.add('lalala')                  ##lzs nice huhuhu hahaha lalala
    #去除数组中的某些数据,丢掉的如果是没有的则报错
    s.remove('huhuhu')               ##lzs nice hahaha
    #去除数组中的某些数据,丢掉的如果是没有的不报错
    s.discard('444')                 ##lzs nice huhuhu hahaha
    ##清空数组元素
    s.clear()                        ##set()
    ##复制数组到另外一个数组
    s1=s.copy()                      ##s1={'lzs','nice','huhuhu','hahaha'}
    

    序列类型

    序列类型,就是带有索引的数据类型:字符串、列表、元祖

    #字符串、列表、元祖共有的方法
    s='lzs nice'
    ##求字符串的长度
    print(len(s))    ##8
    ##判断lzs是否在字符串中
    print('lzs' in s)  ##ture
    ##判断good是否不在字符串中
    print('good' not in name) ##ture
    ##把数组的元素打印出来
    for i in s:
        print(1,end=' ')       ##l z s  n i c e
    

    列表:中括号内用逗号隔开多个元素

    ##将列表的中元素用字符串的方式显示出来
    s=['lzs','nice','huhuhu']
    s1=set(s)
    s=list(s1)
    print(s1)
    #列表的内置方法
    ##将lalalla追加到列表的最后
    s1.append('lalalala')     ##['lzs','nice','huhuhu','lalala']
    ##按照索引删除
    del s1[0]                 ##['nice','huhuhu']
    ##删除列表
    s.clear()
    ##排序
    s=[1,9,5,7,6]
    s.sort()                   ##[1,5,6,7,9]
    ##翻转
    s.reverser()               ##[6,7,5,9,1]
    

    元祖:就是把列表的中括号换成小括号,然后他没有内置方法

    ##只可取不可更改
    tu = (1,3,2,100,4,5)
    print(tu[0])       ##1
    

    字典类型

    大括号内以逗号分隔键值对(key(描述意义):value)的形式存储数据

    s={'name':'lzs','height':184,'weight':130,'hobby':['play','sing']}
    ##取值
    print(s['name'])             ##lzs
    print(s['hobby'][1])         ##play
    ##如果没有key。则取none,可以自定义没有值能取到的值
    print(s.get(name1),wow)       ##wow
    print(s.get('hebby'[2]))      ##play
    

    循环取值:

    s={'name':'lzs','height':184,'weight':130,'hobby':['play','sing']}
    ##取出来的是key的值
    for i in s:
        print(i)         
    ##取出来的是key后面对应的值
    for i in s.values():
        print(i)
    ##取出来的是所有的值
    for i in s.items():
        print(i)
    

    删除值

    s={'name':'lzs','height':184,'weight':130,'hobby':['play','sing']}
    s.setdefault('weight',130)
    print(s)
    

    jieba库

    jieba库一般用于分词

    res = jieba.lcut('中华人民共和国是一个伟大的国家')  # 第一个就是尽量长,主要掌握这一个
    print(res)
    res = jieba.lcut_for_search('中华人民共和国是一个伟大的国家')  # 第二个就是把第一个的长的单词继续切
    print(res)
    
    既然选择了远方,只能风雨兼程
  • 相关阅读:
    C#中的Singleton模式
    C#中的TemplateMethod模式
    从汉堡加料说起——浅谈C#中的Decorator模式
    轻松实现记录与撤销——C#中的Command模式
    分布式系统一致性问题与Raft算法(上)
    Scala函数式编程(五) 函数式的错误处理
    Spark RPC框架源码分析(三)Spark心跳机制分析
    AnalyticDB实现和特点浅析
    java并发编程 --并发问题的根源及主要解决方法
    数据的存储结构浅析LSM-Tree和B-tree
  • 原文地址:https://www.cnblogs.com/lzss/p/11209549.html
Copyright © 2020-2023  润新知