成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

接口自動化框架里常用的小工具

開發
在日常編程工作中,我們常常需要處理各種與時間、數據格式及配置文件相關的問題。本文整理了一系列實用的Python代碼片段,涵蓋了日期時間轉換、數據格式化與轉換、獲取文件注釋以及讀取配置文件等內容,助力開發者提升工作效率,輕松應對常見任務。

在日常編程工作中,我們常常需要處理各種與時間、數據格式及配置文件相關的問題。本文整理了一系列實用的Python代碼片段,涵蓋了日期時間轉換、數據格式化與轉換、獲取文件注釋以及讀取配置文件等內容,助力開發者提升工作效率,輕松應對常見任務。

1. 秒級與毫秒級時間戳獲取

# 獲取當前秒級時間戳
def millisecond(add=0):
    return int(time.time()) + add
# 獲取當前毫秒級時間戳
def millisecond_new():
    t = time.time()
    return int(round(t * 1000))

這兩個函數分別提供了獲取當前時間的秒級和毫秒級時間戳的功能。millisecond()函數允許傳入一個可選參數add,用于增加指定的時間偏移量。

2. 當前日期字符串獲取

#獲取當前時間日期: 20211009
def getNowTime(tianshu=0):
shijian = int(time.strftime('%Y%m%d')) - tianshu
print(shijian)
return shijian

getNowTime()函數返回當前日期(格式為YYYYMMDD),并支持傳入參數tianshu以減去指定天數。該函數適用于需要處理日期型數據且僅關注年月日的情況。

3.修復接口返回無引號JSON數據

def json_json():
    with open("源文件地址", "r") as f, open("目標文件地址", "a+") as a:
        a.write("{")
        for line in f.readlines():
            if "[" in line.strip() or "{" in line.strip():
                formatted_line = "'" + line.strip().replace(":", "':").replace(" ", "") + ","
                print(formatted_line)  # 輸出修復后的行
                a.write(formatted_line + "\n")
            else:
                formatted_line = "'" + line.strip().replace(":", "':'").replace(" ", "") + "',"
                print(formatted_line)  # 輸出修復后的行
                a.write(formatted_line + "\n")
        a.write("}")

此函數用于處理從接口復制的未正確格式化的JSON數據,修復缺失的引號,并將其寫入新的文件。源文件與目標文件的路徑需替換為實際路徑。

4.將URL查詢字符串轉為JSON

from urllib.parse import urlsplit, parse_qs
def query_json(url):
    query = urlsplit(url).query
    params = dict(parse_qs(query))
    cleaned_params = {k: v[0] for k, v in params.items()}
    return cleaned_params

query_json()函數接收一個包含查詢字符串的URL,解析其查詢部分,將其轉換為字典形式,并清理多值參數,只保留第一個值。

5.文件注釋提取

import os
def get_first_line_comments(directory, output_file):
    python_files = sorted([f for f in os.listdir(directory) if f.endswith('.py') and f != '__init__.py'])
    comments_and_files = []
    for file in python_files:
        filepath = os.path.join(directory, file)
        with open(filepath, 'r', encoding='utf-8') as f:
            first_line = f.readline().strip()
            if first_line.startswith('#'):
                comment = first_line[1:].strip()
                comments_and_files.append((file, comment))
    with open(output_file, 'w', encoding='utf-8') as out:
        for filename, comment in comments_and_files:
            out.write(f"{filename}: {comment}\n")
# 示例用法
get_first_line_comments('指定文件夾', '指定生成文件路徑.txt')
get_first_line_comments()函數遍歷指定目錄下的.py文件,提取每份文件的第
一行注釋(以#開頭),并將文件名與注釋對應關系寫入指定的文本文件中。

6.讀取配置INI文件

import sys
import os
import configparser
class ReadConfig:
    def __init__(self, config_path):
        self.path = config_path
    def read_sqlConfig(self, fileName="sql.ini"):
        read_mysqlExecuteCon = configparser.ConfigParser()
        read_mysqlExecuteCon.read(os.path.join(self.path, fileName), encoding="utf-8")
        return read_mysqlExecuteCon._sections
    def read_hostsConfig(self, fileName="hosts.ini"):
        read_hostsCon = configparser.ConfigParser()
        read_hostsCon.read(os.path.join(self.path, fileName), encoding="utf-8")
        return read_hostsCon._sections
# 示例用法
config_reader = ReadConfig('配置文件所在路徑')
sql_config = config_reader.read_sqlConfig()
hosts_config = config_reader.read_hostsConfig()["hosts"]
ReadConfig類封裝了對INI配置文件的讀取操作,支持讀取sql.ini和hosts.ini文件。通過實例化該類并指定配置文件路徑,即可方便地獲取所需配置信息。

7.設置全局文件路徑

import os
def setFilePath(filePath):
    current_module_path = os.path.dirname(os.path.abspath(__file__))
    project_root_path = os.path.dirname(os.path.dirname(current_module_path))
    path = os.path.join(project_root_path, filePath.lstrip('/'))
    return os.path.abspath(path)
# 示例用法
confPath = setFilePath("地址文件路徑")

setFilePath()函數根據提供的相對路徑,結合當前模塊的絕對路徑,計算出項目根目錄下的目標文件或目錄的絕對路徑,便于在項目中統一管理資源位置。

責任編輯:華軒 來源: 測試開發學習交流
相關推薦

2012-03-15 10:32:05

Windows系統網絡故障

2022-08-29 10:11:28

PDFWord自動化工具

2009-11-19 08:48:10

Windows 7桌面工具

2022-05-16 09:20:00

開發工具

2023-09-13 11:40:12

2024-02-28 16:04:04

深拷貝Python

2024-04-30 15:05:36

Python接口自動化

2010-07-01 10:24:30

UML小工具

2009-12-08 14:02:25

Windows 7小工

2013-03-29 14:46:33

App開發小工具輔助工具

2022-05-22 07:29:24

工具插件客戶端軟件

2022-04-11 15:34:29

機器學習AutoML開源

2011-03-10 09:03:35

Python

2010-05-19 19:10:42

2021-05-10 11:06:31

Python工具代碼

2020-11-26 12:05:44

Python小工具代碼

2021-11-05 06:57:50

架構工具代碼

2021-05-20 11:30:17

Python工具代碼

2011-04-12 12:53:17

2022-08-05 22:15:26

Python自動化測試
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美亚洲综合久久 | 免费在线观看av的网站 | 成人av一区 | 国产精品视频500部 a久久 | 欧美在线一区二区三区 | 99精品欧美一区二区三区综合在线 | 一区二区三区亚洲 | 免费看国产一级特黄aaaa大片 | 亚洲综合激情 | 欧美精品综合 | 91久久视频 | 久久精品国产清自在天天线 | 欧美午夜激情在线 | 亚洲在线久久 | 国内精品一区二区三区 | 国产精品自产拍在线观看蜜 | 成年人网站免费视频 | 91福利在线观看视频 | 国产激情视频在线免费观看 | 91社区在线高清 | 亚洲欧美日韩精品久久亚洲区 | 波多野结衣电影一区 | 国产视频中文字幕在线观看 | 91一区二区三区在线观看 | 国产精品美女www爽爽爽视频 | 欧美成人a∨高清免费观看 老司机午夜性大片 | 久久精品亚洲精品国产欧美 | 99国产精品久久久久老师 | 伊人网站视频 | 精品国产免费人成在线观看 | 国产成人精品视频在线观看 | 成人精品高清 | 免费看黄色国产 | 在线观看亚洲欧美 | 91文字幕巨乱亚洲香蕉 | 国产精品久久a | 欧美综合在线视频 | 18成人在线观看 | 久久免费观看一级毛片 | 精品日韩一区二区 | 99精品国产一区二区三区 |