• 20181205Python 自动化笔试题,挑战你的知识库

    2020-07-24 10:55
    import os,hashlib
    class get_file():
        def __init__(self,path):
            self.path=path
            """path 通过传入制定路径,获取路径下的所有文件名字返回一个1维列表"""
            self.file_name=[]
            for (dirpath, dirnames, filenames) in os.walk(self.path):
                if  filenames:
                    self.file_name.append(filenames)
            self.old_file_name=[]
            for i in self.file_name:
                for j in i:
                    self.old_file_name.append(j)
            self.old_file_name
            print("old_file       ",self.old_file_name)
            
        def count_file(self,filename):
            count=0
            for  i  in self.old_file_name:
                if filename ==i:
                    count=count+1
            return count
        def getBigFileMD5(self,filepath):
            """获取文件的md5值,防止因为文件过大而发生读取错误,采用分段读取"""
            if os.path.isfile(filepath):
                file_md5 = hashlib.md5()
                maxbuf = 8192          #设置每次读取的字节数
                f = open(filepath,'rb')
                while True:
                    buf = f.read(maxbuf)  
                    if not buf:
                        break          #每次读取设置的字节数大小,直到读完后跳出循环    
                    file_md5.update(buf)   #用数据中的字节更新哈希对象,重复调用相当于链接起来
                f.close()      
                hash = file_md5.hexdigest()
                return str(hash).upper()
            return None 
            
        def unique_absfile(self):
            """判断文件名在所有文件的列表中出现的次数,大于1则更改文件名字为md5值,并且保留后缀名字,
            方法返回处理后的文件名字(绝对路径)的列表"""
            pathname=[]
        
            for (dirpath, dirnames, filenames) in os.walk(self.path):   
                 
                for filename in filenames: 
                    if self.count_file(filename)>1: #判断文件名字是否重复
                        file_first_name=filename.split(".")[0]
                        file_last_name=filename.split(".")[1] 
                        path_name=os.path.join(dirpath, filename)  #获取重复文件名字的绝对路径
                        
                        new_filename=self.getBigFileMD5(path_name)+"."+file_last_name#保证改名后,文件的后缀名字不变
                         os.path.join(dirpath, new_filename)
                        
                        new_pathname=os.rename(path_name,new_pathname)
                        pathname=pathname+[new_pathname ]
                    else:
                        pathname=pathname+[os.path.join(dirpath, filename)]
            return pathname 
        def file_size(self,condition=10):
            """调用内部方法self.unique_absfile(),获得去重后的文件名字列表(文件名是绝对路径)"""
            """获取文件大小,以M为单位"""
            all_file=self.unique_absfile()
            file_name=[]
            for i in   all_file:
                size = float((os.path.getsize(i)/1024))
                if size>condition:
    
                    if "\\" in i:
                       file_name.append(i.split("\\")[-1]) 
                    else:
                        file_name.append(i.split("/")[-1]) 
            return file_name
    
  • 20181205Python 自动化笔试题,挑战你的知识库

    2020-07-24 10:55

    import os,hashlib
    class get_file():
    def init(self,path):
    self.path=path
    """path 通过传入制定路径,获取路径下的所有文件名字返回一个1维列表"""
    self.file_name=[]
    for (dirpath, dirnames, filenames) in os.walk(self.path):
    if filenames:
    self.file_name.append(filenames)
    self.old_file_name=[]
    for i in self.file_name:
    for j in i:
    self.old_file_name.append(j)
    self.old_file_name
    print("old_file ",self.old_file_name)

    def count_file(self,filename):
        count=0
        for  i  in self.old_file_name:
            if filename ==i:
                count=count+1
        return count
    def getBigFileMD5(self,filepath):
        """获取文件的md5值,防止因为文件过大而发生读取错误,采用分段读取"""
        if os.path.isfile(filepath):
            file_md5 = hashlib.md5()
            maxbuf = 8192          #设置每次读取的字节数
            f = open(filepath,'rb')
            while True:
                buf = f.read(maxbuf)  
                if not buf:
                    break          #每次读取设置的字节数大小,直到读完后跳出循环    
                file_md5.update(buf)   #用数据中的字节更新哈希对象,重复调用相当于链接起来
            f.close()      
            hash = file_md5.hexdigest()
            return str(hash).upper()
        return None 
        
    def unique_absfile(self):
        """判断文件名在所有文件的列表中出现的次数,大于1则更改文件名字为md5值,并且保留后缀名字,
        方法返回处理后的文件名字(绝对路径)的列表"""
        pathname=[]
    
        for (dirpath, dirnames, filenames) in os.walk(self.path):   
             
            for filename in filenames: 
                if self.count_file(filename)>1: #判断文件名字是否重复
                    file_first_name=filename.split(".")[0]
                    file_last_name=filename.split(".")[1] 
                    path_name=os.path.join(dirpath, filename)  #获取重复文件名字的绝对路径
                    
                    new_filename=self.getBigFileMD5(path_name)+"."+file_last_name#保证改名后,文件的后缀名字不变
                    new_pathname = os.path.join(dirpath, new_filename)
                    
                    new_pathname=os.rename(path_name,new_pathname)
                    pathname=pathname+[new_pathname ]
                else:
                    pathname=pathname+[os.path.join(dirpath, filename)]
        return pathname 
    def file_size(self,condition=10):
        """调用内部方法self.unique_absfile(),获得去重后的文件名字列表(文件名是绝对路径)"""
        """获取文件大小,以M为单位"""
        all_file=self.unique_absfile()
        file_name=[]
        for i in   all_file:
            size = float((os.path.getsize(i)/1024))
            if size>condition:
    
                if "\\" in i:
                   file_name.append(i.split("\\")[-1]) 
                else:
                    file_name.append(i.split("/")[-1]) 
        return file_name 
    
  • 20181205Python 自动化笔试题,挑战你的知识库

    2020-07-24 10:55

    import os,hashlib
    class get_file():
    def init(self,path):
    self.path=path
    """path 通过传入制定路径,获取路径下的所有文件名字返回一个1维列表"""
    self.file_name=[]
    for (dirpath, dirnames, filenames) in os.walk(self.path):
    if filenames:
    self.file_name.append(filenames)
    self.old_file_name=[]
    for i in self.file_name:
    for j in i:
    self.old_file_name.append(j)
    self.old_file_name
    print("old_file ",self.old_file_name)

    def count_file(self,filename):
        count=0
        for  i  in self.old_file_name:
            if filename ==i:
                count=count+1
        return count
    def getBigFileMD5(self,filepath):
        """获取文件的md5值,防止因为文件过大而发生读取错误,采用分段读取"""
        if os.path.isfile(filepath):
            file_md5 = hashlib.md5()
            maxbuf = 8192          #设置每次读取的字节数
            f = open(filepath,'rb')
            while True:
                buf = f.read(maxbuf)  
                if not buf:
                    break          #每次读取设置的字节数大小,直到读完后跳出循环    
                file_md5.update(buf)   #用数据中的字节更新哈希对象,重复调用相当于链接起来
            f.close()      
            hash = file_md5.hexdigest()
            return str(hash).upper()
        return None 
        
    def unique_absfile(self):
        """判断文件名在所有文件的列表中出现的次数,大于1则更改文件名字为md5值,并且保留后缀名字,
        方法返回处理后的文件名字(绝对路径)的列表"""
        pathname=[]
        
        for (dirpath, dirnames, filenames) in os.walk(self.path):   
             
            for filename in filenames: 
                if self.count_file(filename)>1: #判断文件名字是否重复
                    file_first_name=filename.split(".")[0]
                    file_last_name=filename.split(".")[1] 
                    path_name=os.path.join(dirpath, filename)  #获取重复文件名字的绝对路径
                    
                    new_filename=self.getBigFileMD5(path_name)+"."+file_last_name#保证改名后,文件的后缀名字不变
                    new_pathname = os.path.join(dirpath, new_filename)
                    
                    new_pathname=os.rename(path_name,new_pathname)
                    pathname=pathname+[new_pathname ]
                else:
                    pathname=pathname+[os.path.join(dirpath, filename)]
        return pathname 
      
    
    
                
    
    def file_size(self,condition=10):
        """调用内部方法self.unique_absfile(),获得去重后的文件名字列表(文件名是绝对路径)"""
        """获取文件大小,以M为单位"""
        all_file=self.unique_absfile()
        file_name=[]
        for i in   all_file:
            size = float((os.path.getsize(i)/1024))
            if size>condition:
    
                if "\\" in i:
                   file_name.append(i.split("\\")[-1]) 
                else:
                    file_name.append(i.split("/")[-1]) 
        return file_name 
    
  • 20181205Python 自动化笔试题,挑战你的知识库

    2020-07-24 10:55
    # -*- coding: utf-8 -*-
    # @Time  : 2018/12/5 10:21
    # @Author : Monica
    # @Email : 498194410@qq.com
    # @File  : os_practice.py
    
    import os
    import hashlib
    
    allfiles = []
    templist = {}
    end_file = []
    
    
    class GetFlie:
        def __init__(self, dirpath):
            self.dirpath = dirpath
    
        def get_all_file(self):
            # 通过os.walk获取目录下的所有文件名
            for root, dirs, files in os.walk(self.dirpath):
                for file in files:
                    # 判断size
                    size = os.path.getsize(os.path.join(root, file))
                    if size >= 10485760:
                        # 文件名添加到allfiles列表里
                        allfiles.append(os.path.join(root, file))
            # 重命名
            for i in range(len(allfiles)):
                # 如果md5在字典的key已存在
                if self.get_md5(allfiles[i]) in templist.keys():
                    templist[self.get_md5(allfiles[i]) + str(i)] = allfiles[i].split(".")[0] + str(i) + "." + allfiles[i].split(".")[-1]
                else:
                    templist[self.get_md5(allfiles[i])] = allfiles[i]
            # 最后的文件
            for file in templist.values():
                end_file.append(file)
    
            return end_file
    
        @staticmethod
        def get_md5(filename):
            f = open(filename, 'rb')
            m1 = hashlib.md5()
            m1.update(f.read())
            hash_code = m1.hexdigest()
            f.close()
            md5 = str(hash_code).lower()
            return md5
    
    if __name__ == '__main__':
        path = r'I:\lesson_practice\tool'
        print(GetFlie(path).get_all_file())
    
    
  • Python13 期字符串大考核!!!

    2020-07-24 10:55

    😍 哈哈

  • Python13 期字符串大考核!!!

    2020-07-24 10:55

    才发现之前粗心写错了,该打该打!
    image.png

  • 基于 jmeter tcp 压力测试

    2020-07-24 10:55

    大佬,是不是没有写完阿。期待你的更新。

  • 20181205Python 自动化笔试题,挑战你的知识库

    2020-07-24 10:55

    😎 各位请出招吧!!!最后请做出题目的宝宝,贴代码上来!注意Markdown的语法哟!!!

  • 基于 jmeter tcp 压力测试

    2020-07-24 10:55

    🤓 这个可以说是非常妥了,如果可以加以你们文字的实战描述就更加厉害呀!

  • Python13 期字符串大考核!!!

    2020-07-24 10:55

    a = 'sdSdsfdAdsdsdfsfdsdASDSDFDSFa'

    b=a.swapcase()

    print(a.swapcase())

    first=''
    for i in a:
    if i.islower():
    first = first + i.upper()
    else:
    first = first + i.lower()

    last=''
    for i in a:
    if i.islower():
    last=last+chr(219 - ord(i))
    else:
    last = last + chr(155 - ord(i))
    print (first)
    print(last)

  • [验签] 如何利用 Python 完成验签操作

    2020-07-24 10:55

    item获得的是str格式,那if是不是不会执行

  • 我的第一次埋点功能测试

    2020-07-24 10:55

    灰常棒哦,我是柠檬班的星星老师,可以加下我QQ(QQ号:2330360847)吗?会给你稿费哦,记得联系我哟😊 😊

  • Python13 期字符串大考核!!!

    2020-07-24 10:55

    a='sdSdsfdAdsdsdfsfdsdASDSDFDSFa'
    print(a.upper())
    print(a.lower())
    print(a.swapcase())
    b=a.swapcase()
    c=''
    for i in b:
    if i.isupper():
    i=chr(155-ord(i))
    c +=i
    elif i.islower():
    i=chr(219-ord(i))
    c +=i
    print(c)

  • Python13 期字符串大考核!!!

    2020-07-24 10:55

    #请用自己目前所学实现字符串大写转小写,小写变大写,并且将字符串变为镜像字符串。例如:’A’变为’Z’,’b’变为’y

    示范字符串: ”sdSdsfdAdsdsdfsfdsdASDSDFDSFa”字符串大写变小写,小写变大写,然后最后变为镜像字符串。

    str_1="sdSdsfdAdsdsdfsfdsdASDSDFDSFa"
    #大小写互换
    str_2=str_1.swapcase()
    print(str_2)
    #变成镜像字符串
    str=''
    for i in range(len(str_2)):
    if str_2[i].isupper():
    str+= chr(155-ord(str_2[i]))
    if str_2[i].islower():
    str+= chr(219-ord(str_2[i]))
    print(str)

  • Python13 期字符串大考核!!!

    2020-07-24 10:55

    a = 'sdSdsfdAdsdsdfsfdsdASDSDFDSFa'
    #字符串a大小写互换
    s = a.swapcase()
    print('s大小写互换后为:',s)
    s.replace('A','Z')
    s.replace('b','y')
    print(s)

  • Python13 期字符串大考核!!!

    2020-07-24 10:55

    s="sdSdsfdAdsdsdfsfdsdASDSDFDSFa"
    print(s.upper())
    print(s.lower())
    print(s.swapcase())

    print("替换前:",s)
    s_1=s.replace('s','h')
    s_2=s_1.replace('S','H')
    s_3=s_2.replace('f','u')
    s_4=s_3.replace('A','Z')
    s_5=s_4.replace('D','W')
    s_6=s_5.replace('F','U')
    s_7=s_6.replace('d','w')
    s_8=s_7.replace('a','z')
    print("替换后:",s_8)

  • Python13 期字符串大考核!!!

    2020-07-24 10:55

    s="sdSdsfdAdsdsdfsfdsdASDSDFDSFa"
    s1=s.swapcase()
    print("调整之后的字符串为",s1)
    new_s=''
    for i in s1:
    if i.islower():
    i = chr(219-ord(i))
    new_s +=i
    elif i.isupper():
    i=chr(155-ord(i))
    new_s += i
    print("镜像之后的值:", new_s)

  • Python13 期字符串大考核!!!

    2020-07-24 10:55

    a='sdSdsfdAdsdsdfsfdsdASDSDFDSFa'
    print (a.swapcase())
    #字符串大小写转换
    a='sdSdsfdAdsdsdfsfdsdASDSDFDSFa'
    s = ''
    for i in a:
    if i.islower():
    i = chr(219 - ord(i))
    s += i
    elif i.isupper():
    i = chr(155 - ord(i))
    s += i
    print(s)
    #镜像字符串

  • [验签] 如何利用 Python 完成验签操作

    2020-07-24 10:55

    不可以。。。。这个是其他学员的公司项目环境,我不能暴露。

  • [验签] 如何利用 Python 完成验签操作

    2020-07-24 10:55

    😻 访问的url可以给我下不,我跑下研究研究。

  • [验签] 如何利用 Python 完成验签操作

    2020-07-24 10:55

    😂 加密的时候 会考虑到这个时间戳的问题。小朋友。

  • Python13 期字符串大考核!!!

    2020-07-24 10:55

    😃 very good!

  • [验签] 如何利用 Python 完成验签操作

    2020-07-24 10:55

    验签需要时间戳,哪就是直接把时间戳放到header中哇!!!👣

  • Python13 期字符串大考核!!!

    2020-07-24 10:55

    有意思有意思😎 😁

  • Python13 期字符串大考核!!!

    2020-07-24 10:55

    这个很有意思,我欣赏你!😍

  • 谈谈 cookies

    2020-07-24 10:55

    👣 👣 👣 来了

  • Python13 期字符串大考核!!!

    2020-07-24 10:55

    c='sdSdsfdAdsdsdfsfdsdASDSDFDSFa'
    print(c.swapcase())
    new_c=''
    for i in c:
    if i.islower():
    i=chr(219-ord(i))
    new_c += i
    elif i.upper():
    i=chr(155-ord(i))
    new_c += i
    print(new_c)

    结果:
    SDsDSFDaDSDSDFSFDSDasdsdfdsfA
    hwHwhuwZwhwhwuhuwhwZHWHWUWHUz

  • Python13 期字符串大考核!!!

    2020-07-24 10:55

    lucky:
    image.png

  • 说说这两天写 python 导包遇到的坑!!!

    2020-07-24 10:55

    先了解一下闭包

  • Python13 期字符串大考核!!!

    2020-07-24 10:55
    ```python
    #实现字符串的大小写互换,并且将字符串镜像输出
    # 实现镜像要用到chr函数和ord函数
    a="sdSdsfdAdsdsdfsfdsdASDSDFDSFa"
    a_swa=a.swapcase()#完成大小写互换
    b1=a_swa.replace("a",chr(219-ord("a")))
    b2=b1.replace("A",chr(155-ord("A")))
    c1=b2.replace("s",chr(219-ord("s")))
    c2=c1.replace("S",chr(155-ord("S")))
    d1=c2.replace("d",chr(219-ord("d")))
    d2=d1.replace("D",chr(155-ord("D")))
    e1=d2.replace("f",chr(219-ord("f")))
    e2=e1.replace("F",chr(155-ord("F")))
    print('''----输出结果如下----
          大小写互换:{}
          镜像输出:  {}'''.format(a_swa,e2))
    
    
    ----输出结果如下----
          大小写互换SDsDSFDaDSDSDFSFDSDasdsdfdsfA
          镜像输出  HWhWHUWzWHWHWUHUWHWzhwhwuwhuZ
    
  • Python13 期字符串大考核!!!

    2020-07-24 10:55

    #示例一:小写变大写
    msg_1 = 'my name is sophia'
    print('小写变大写后是:'+msg_1.upper())

    #示例二:大写变小写
    msg_2 = 'MY NAME IS SOPHIA'
    print('大写变大写后是:'+msg_2.lower())

    #示例三:大写变小写,小写变大写,生成镜像字符串;利用字符串的内置方法来解决
    def change_msg_3(s):
    s = s.swapcase()#互换大小写
    in_tab = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
    out_tab = 'ZYXWVUTSRQPONMLKJIHGFEDCBAzyxwvutsrqponmlkjihgfedcba'
    reflect = s.maketrans(in_tab, out_tab)#建立翻译表
    s = s.translate(reflect)#根据翻译表进行翻译
    return s
    if name == 'main':
    s = 'MynameisSOPHIA'
    new_s = change_msg_3(s)
    print("转换之前的字符串:", s)
    print("转换之后的字符串:", new_s)

    image.png

  • 说说这两天写 python 导包遇到的坑!!!

    2020-07-24 10:55

    😎 坑还是这个坑,完美解决了非常赞!!!
    装饰器!后期请关注柠檬班的课程呀,后面如果加了告诉你!