• 学习python的第四天


    #去掉全部空格
    def P():
        a =' 1 2 3 4 5 '
        b=a.replace(" ","")
        print(b)
    P()
    
    #python中可测长度都为len()
    
    #修改
    a=[1,2,3]
    a[0]=100
    
    #插入
    a=[1,2,3]
    a.append(100)
    
    #列表中可以表示任何东西,可以循环
    
    #去掉重复的数字
    a = [1,2,3,3,4,2,3,4,5,6,1]
    b = []
    for i in a:
        if i not in b:
            b.append(i)
    print(b)
    
    #进度条
    
    import time
     
    class Index(object):
        def __init__(self, number=50, decimal=2):
            """
            :param decimal: 你保留的保留小数位
            :param number: # 号的 个数
            """
            self.decimal = decimal
            self.number = number
            self.a = 100/number   # 在百分比 为几时增加一个 # 号
     
        def __call__(self, now, total):
            # 1. 获取当前的百分比数
            percentage = self.percentage_number(now, total)
     
            # 2. 根据 现在百分比计算
            well_num = int(percentage / self.a)
            # print("well_num: ", well_num, percentage)
     
            # 3. 打印字符进度条
            progress_bar_num = self.progress_bar(well_num)
     
            # 4. 完成的进度条
            result = "\r%s %s" % (progress_bar_num, percentage)
            return result
     
        def percentage_number(self, now, total):
            """
            计算百分比
            :param now:  现在的数
            :param total:  总数
            :return: 百分
            """
            return round(now / total * 100, self.decimal)
     
        def progress_bar(self, num):
            """
            显示进度条位置
            :param num:  拼接的  “#” 号的
            :return: 返回的结果当前的进度条
            """
            # 1. "#" 号个数
            well_num = "#" * num
     
            # 2. 空格的个数
            space_num = " " * (self.number - num)
     
            return '[%s%s]' % (well_num, space_num)
     
    index = Index()
     
    start = 371
    for i in range(start + 1):
        print(index(i, start), end='')
        time.sleep(0.01)
        # \r 返回本行开头
        # end : python 结尾不加任何操作, 默认是空格       
    
    #简单的进度条:
    import time
    for i in range(1,101):
        time.sleep(1)
        print('%s %d%%\r'%('#'*i,i),end="",flush=True)
    
    #排序默认升序
    a=[2,1,4,3,6,7.10]
    print(sorted(a))
    #降序
    print(sorted(a,reverse=True))
    
    #冒泡排序
    def bubbleSort(arr):
        n = len(arr)
     
        # 遍历所有数组元素
        for i in range(n):
     
            # Last i elements are already in place
            for j in range(0, n-i-1):
     
                if arr[j] > arr[j+1] :
                    arr[j], arr[j+1] = arr[j+1], arr[j]
     
    arr = [64, 34, 25, 12, 22, 11, 90]
     
    bubbleSort(arr)
     
    print ("排序后的数组:")
    for i in range(len(arr)):
        print ("%d" %arr[i])
    
    #按后面的数字排序
    list1=[['li',100],['ni',90],['ch',120],['huo',70]]
    print(sorted(list1,key=lambda x:x[1]))
    
    #简写的语法
    f=[x for x in range(100) if x%2==0]
      [3] [        1       ] [    2   ]
    print(f)
    
    #元组 不可以修改 可相加相乘
    #字典的一切操作都是通过键名操作键值!!!!
    a={1:100,1.0:10,'key':'value','list':[1,2,3],
    'tuple':(1,2,3),'set':{1,2,3}}
    
    dict_={1:100,'liyuan':'value'}
    
    print(dict_[1])#这里的1 是键名
    #字典是无需的,没有索引操作,除非是有序字典
    #当字典动态变化的时候用get方法
    print(dict_.get())
    
    path='D:\\Classes_.txt'
    open_=open(path,mode='r',encoding='utf8')
    lines=open_.readlines()
    dict_={}
    
    for str_ in lines:
        str_1=str_.strip('\n')
        key,value=str_1.split(' ')
        dict_[key]=value
    
    num=input('》》')
    value=dict_[num]
    print(value)
    
  • 相关阅读:
    Mysql一分钟定位 Next-Key Lock,你需要几分钟
    golang 服务大量 CLOSE_WAIT 故障排查
    Mysql大并发热点行更新的两个骚操作
    golang 服务诡异499、504网络故障排查
    golang 服务平滑重启小结
    vim 列编辑模式
    特邀全球互联网技术大会(麒麟会GITC)分享 —大型团购系统架构设计
    ElasticSearch 评分排序
    zookeeper 实现分布式锁安全用法
    诡异的druid链接池链接断开故障经验总结
  • 原文地址:https://www.cnblogs.com/TheNeverLemon/p/11288894.html
Copyright © 2020-2023  润新知