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

公众号平台登陆入口seo在线教程

公众号平台登陆入口,seo在线教程,google优化排名,网页设计和网站开发本人因为工作原因#xff0c;经常使用hive以及presto#xff0c;一般是编写hive完成工作#xff0c;服务器原因#xff0c;presto会跑的更快一些#xff0c;所以工作的时候会使用presto验证结果#xff0c;所以就要频繁hive转presto#xff0c;为了方便#xff0c;我用…        本人因为工作原因经常使用hive以及presto一般是编写hive完成工作服务器原因presto会跑的更快一些所以工作的时候会使用presto验证结果所以就要频繁hive转presto为了方便我用Python编写了一个转换代码的小程序工作繁忙我一点点更新吧。 一、厘清需求         首先思考具体的需求 识别加减乘除等基本运算presto对于字段属性有严格要求所以为了一劳永逸将涉及到计算的字段全部cast为double但是要注意字符串中出现运算符的这是不能改的。识别,,,!,,,这些判断符一般用在条件语句wherejoin中。以ab为例1a是字段b是一个字符串那么a就要cast为varchar并且b不需要任何cast2如果b是数值那么a要cast为double并且b不需要任何cas3如果b和时间有关那么a就要case为date4如果两边都是字段那就都cast为varchar。常用的一些函数比如substrdatediffconcatsum等等都要转换成对应的presto函数用法。使用tkinter创造一个简单的交互界面方便实时的输入输出如果有错误就简单的反应错误。 二、代码思路 先处理加减乘除运算判断符然后再处理函数然后添加ui交互界面最后将代码简单包装为类条件允许就包装为应用程序但是公司电脑权限高所以不太可行。 三、Python代码 import re import os from tkinter import *class Hive2Presto:def __int__(self):self.t_funcs [substr, nvl, substring, unix_timestamp] \[to_date, concat, sum, avg, abs, year, month, ceiling, floor]self.time_funcs [date_add, datediff, add_months]self.funcs self.t_funcs self.time_funcsself.current_path os.path.abspath(__file__)self.dir os.path.dirname(self.current_path)self.result []self.error []self.filename def main(self):self.root Tk()self.root.config(bg#ff741d) # 背景颜色设置为公司主题色^_^self.root.title(Hive转Presto)self.win_width 550self.win_height 500self.screen_width self.root.winfo_screenwidth()self.screen_height self.root.winfo_screenheight()self.x (self.screen_width - self.win_width) // 2self.y (self.screen_height - self.win_height) // 2self.root.geometry(f{self.win_width}x{self.win_height}{self.x}{self.y})font (楷体, 11)self.button Button(self.root, text转换, commandself.trans, bg#ffcc8c, fontfont, anchore)self.button.grid(row0, column0, padx100, pady10, stickyW)self.file_button Button(self.root, text选择文件, commandself.choose_file, bg#ffcc8c, fontfont,anchore)self.file_button.grid(row0, column1, padx0, pady10, stickyW)self.entry Entry(self.root, width65, fontfont)self.entry.insert(0, 输入Hive代码)self.entry.grid(row1, column0, padx10, pady10, columnspan2)self.entry.bind(Button-1, self.delete_text)self.text Text(self.root, width75, height20)self.text.grid(row2, column0, padx10, pady10, columnspan2)self.des_label Label(self.root, text可以复制结果也有生成的文件与选取的文件同文件夹, bg#ffcc8c,font(楷体, 10))self.des_label.grid(row3, column0, padx10, pady10, columnspan2)s for i in range(0, (n : len(self.funcs)), 4):if i 4 n:s ,.join(self.funcs[i:i 4]) \nelse:s ,.join(self.funcs[i:]) \ns s[:-1]self.des_label1 Label(self.root, texts, bg#ffcc8c,font(楷体, 10))self.des_label1.grid(row4, column0, padx10, pady10, columnspan2)self.root.columnconfigure(0, minsize10)self.root.columnconfigure(1, minsize10)self.root.columnconfigure(0, pad5)self.root.mainloop()def replace_func(self, s, res):passdef func_trans(self, f, f1, func_name, ss, s):passdef choose_file(self):如果代码太多从text中输入会很卡直接选择代码文件输入会很快:return:passdef findvar(self, ss):搜索与计算有关的字段:param ss::return:passdef mysplit(self, s):分割字段:param s::return:passdef extact_func(self, s, func_name):passdef delete_text(self, event):passdef trans(self):passif __name__ __main__:pro Hive2Presto()pro.__int__()pro.main()先把大致框架写出来其实我已经完成了但是代码都在公司电脑传不出来需要我重新再打一遍顺便看看能不能再优化优化。UI界面大致如下
http://www.hkea.cn/news/14407450/

相关文章:

  • 天津营销网站建设公司排名wordpress 获取评论
  • 南平建设集团网站经常访问的网站来打不开
  • 东莞企业网站制作怎么做自己如何创立网站
  • 新公司的公司简介怎么写南宁百度推广排名优化
  • 一个虚拟主机空间挂两个网站多语言网站建设公司
  • 网站该怎么做链接外贸营销邮件主题一般怎么写
  • 微信营销软件功能郑州seo优化服务
  • 网站html5自适应wordpress apache 配置
  • 网站产品使用说明书怎么做设计公司企业价值观
  • 做设计有必要买素材网站会员吗网站优化排名查询
  • 百度推广是必须先做网站吗郑州加盟网站建设
  • 重庆网站建设技术支持重庆互联网源码网站开发
  • wordpress 文章 相册个人网站seo
  • 网站改成自适应桐城住房和城乡建设局网站
  • 做外贸方面的网站汕头市城市建设开发总公司
  • 博敏网站建设网站评论源码
  • 做网站与做网页的区别找人做网站应该注意哪些
  • 服务器怎么设置ip做网站seo零基础入门教程
  • 北京 手机网站建设炫酷的html5网站
  • 上海网站开发团队专注网站建设16年
  • 淄博网站建设hiddd代做作业网站
  • 如何做自己的淘宝优惠券网站温州seo排名
  • 深圳企业建站高性价比的选择谷歌seo需要做什么的
  • 运城哪里做网站如何查询百度搜索关键词排名
  • 个人网站的制作步骤网页版qq可以聊天吗
  • 昆山建设工程交易网站什么网站能免费做公众号封面
  • 如何建设淘宝网站网站标题更换
  • 新加坡网站域名东莞信息网
  • 有初中生做的网站吗李宁网络营销策划方案
  • 网站建设公司伟置网站建设维护项目