当前位置: 首页 > news >正文

html网页设计环保网站重庆网站开发哪家好

html网页设计环保网站,重庆网站开发哪家好,wordpress 访问不了,可画官网登录入口用python批量把列格式的txt测井文件转为las格式,运行后弹出文件夹选择对话框,批量转换选择的文件夹及子文件夹下的txt文件,进度条指示转换的进度。功能:弹出“选择文件夹”对话框(基于 Tkinter,跨平台&…

用python批量把列格式的txt测井文件转为las格式,运行后弹出文件夹选择对话框,批量转换选择的文件夹及子文件夹下的txt文件,进度条指示转换的进度。

功能:

  1. 弹出“选择文件夹”对话框(基于 Tkinter,跨平台)。

  2. 递归遍历所选文件夹及其全部子文件夹,找出所有扩展名为 .txt 的测井文件。

  3. 假设 txt 为“列格式”,即第一行为表头(曲线名),第二行开始为数值,默认--开始的行为注释。

  4. 将每个 txt 就地生成同名的 .las 文件(LAS 2.0)。

  5. 运行完毕后给出统计信息。

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
带进度条的批量 txt → LAS 转换器
"""import os
import sys
import tkinter as tk
from tkinter import filedialog, messagebox, ttk
import threading
import numpy as np
import lasio
from tqdm import tqdm as tqdm_module# ---------- 业务逻辑 ----------
def txt_to_las(txt_path):"""单文件转换"""data = np.loadtxt(txt_path, skiprows=1)header = np.genfromtxt(txt_path, comments='--', max_rows=1, dtype=str)if data.ndim == 1:data = data.reshape(-1, 1)las = lasio.LASFile()las.well.WELL = os.path.splitext(os.path.basename(txt_path))[0]las.append_curve('DEPT', data[:, 0], unit='m')for i, name in enumerate(header[1:], start=1):las.append_curve(name.strip(), data[:, i])las_path = os.path.splitext(txt_path)[0] + '.las'las.write(las_path, version=2.0)return las_pathdef collect_txt_files(folder):"""递归收集所有 txt 文件"""txt_files = []for root, _, files in os.walk(folder):for f in files:if f.lower().endswith('.txt'):txt_files.append(os.path.join(root, f))return txt_filesdef convert_worker(txt_files, progress_var, progress_bar, root):"""后台线程:执行转换并更新进度"""total = len(txt_files)success = 0progress_var.set(0)progress_bar.config(maximum=total)# 终端进度条with tqdm_module(total=total, desc="Converting", unit="file") as pbar:for idx, txt_path in enumerate(txt_files, 1):try:txt_to_las(txt_path)success += 1except Exception as e:tqdm_module.write(f"失败:{txt_path}\n{e}")pbar.update(1)# 更新 GUI 进度条progress_var.set(idx)root.update_idletasks()messagebox.showinfo("完成", f"共 {total} 个文件,成功转换 {success} 个!")root.quit()# ---------- GUI ----------
def run_gui():root = tk.Tk()root.title("txt → LAS 批量转换")root.geometry("400x120")root.resizable(False, False)# 进度条progress_var = tk.IntVar()progress_bar = ttk.Progressbar(root, variable=progress_var, maximum=100)progress_bar.pack(fill=tk.X, padx=15, pady=20)# 选择文件夹folder = filedialog.askdirectory(title="请选择包含 txt 测井文件的文件夹")if not folder:root.destroy()returntxt_files = collect_txt_files(folder)if not txt_files:messagebox.showwarning("提示", "该文件夹下未发现 txt 文件!")root.destroy()return# 启动后台线程threading.Thread(target=convert_worker,args=(txt_files, progress_var, progress_bar, root),daemon=True).start()root.mainloop()# ---------- 主入口 ----------
if __name__ == '__main__':try:import lasio, numpy, tqdmexcept ImportError as e:messagebox.showerror("缺少依赖", f"请先安装:\n\npip install lasio numpy tqdm")sys.exit(1)run_gui()

http://www.dtcms.com/a/595125.html

相关文章:

  • 找建站公司电脑怎么制作图片
  • 上门做网站公司哪家好服装公司电子商务网站建设策划书
  • 网站制作费用申请沧州市做网站
  • 做网站有哪些公司好wordpress 与 dede
  • 如何创建微信小程序商店seo网站推广软件
  • OpenAI 悄然上线「网校」OpenAI Academy
  • 免费注册域名的网站外贸公司如何做公司网站
  • 网站页面改版降权wordpress一栏主题
  • Spring5基础教程(1)-- 控制反转(IoC)/自动装配(@Autowired)/Bean容器配置
  • 阿里巴巴企业网站建设网站建设制作费 税前扣除吗
  • 怎么建设手机端网站wordpress+怎么改密码
  • 什么网站做美食最好最专业百度关键词排名点
  • 网站建设与实践高自考公司给了一个邮箱怎么登录
  • 泉州惠安网站建设常德论坛尚一网
  • 深圳市外贸网站自带代理的浏览器
  • 网站icp备案 技术负责人怎么做一个简单的网站
  • wordpress怎样搭建网站鞍山在百度做个网站多少钱
  • 什么是网站ui设计宿迁 网站制作
  • 内蒙古建设厅网站百度只收录栏目不收录网站文章
  • 城乡建设部网站施工员证书查询泉州关键词优化
  • 长尾关键词挖掘工具爱网站黄骅招聘网最新招工信息
  • 网站建设注意哪些方面西安做网站费用
  • 网站添加关键字卡当网站建设
  • 酒类产品网站设计wordpress多级分类
  • 游戏币网站建设推广有什么好方法
  • 工商局网站如何做网登网站软文推广网站
  • 个人网站备案备注信息四川个人证书查询网官网
  • 租车网站建设设计有特色的网站
  • 佛山市建设网站微信公众号创建流程
  • 做自适应网站对设计稿的要求江西网站建设价格