根据他人C#代码改写。
垃圾写法,只是帮别人完成任务临时凑得,需要拿走,有问题留言(不一定会看)。

代码完成内容:

  • 新转旧全部完成。
  • 旧转新只改写完5万的

# 新图幅号转旧图幅
def New2Old():TFstr = input('请输入新版图幅号:') #J48G039058# print('输入的图幅号:'+TFstr+',长度:'+str(len(TFstr)))if(len(TFstr)!=3 and len(TFstr)!=10):print('CUO')elif(len(TFstr)==3):print('>>旧【100万】图幅号:' + TFstr[0] + '-' + TFstr[1:3])elif(len(TFstr)==10):type= TFstr[3]H = int(TFstr[4:7]) L = int(TFstr[7:10])print(type)print(H)print(L)if(type=='B'):#50万if (H > 2 or L > 2):print('输出的图幅号有误。')returnX = (H - 1) * 2 + (L - 1) + 1 #旧图幅号对应的地图代码code = ''if(X==1):code='A'elif(X==2):code='B'elif(X==3):code='C'elif(X==4):code='D'print('>>旧【50万】图幅号:' + TFstr[0] + '-' + TFstr[1:3]+'-'+code)elif(type=='C'):#25万if (H > 4 or L > 4):print('输出的图幅号有误。')returnX = (H - 1) * 4 + (L - 1) + 1code = ''if(X>9):code = str(X)else:code = '0'+str(X)# code = str(X) if X>9 else '0'+str(X) 上面IF代码可用这行代替(python中的三目运算公式)print('>>旧【25万】图幅号:' + TFstr[0] + '-' + TFstr[1:3]+'-['+code+']')elif(type=='D'):# 10万if (H > 12 or L > 12):X = (H - 1) * 12 + (L - 1) + 1code = ''if(X>99):code = str(X)elif(X>9):code ='0'+str(X)else:code ='00'+str(X)print('>>旧【10万】图幅号:' + TFstr[0] + '-' + TFstr[1:3]+'-'+code)elif(type=='E'):# 5万if(H > 24 or L > 24):returnH10 = (H - 1) / 2 + 1  #10W地形图对应的行号L10 = (L - 1) / 2 + 1  #10W地形图对应的列号X10 = (H10 - 1) * 12 + (L10 - 1) + 1 #10W旧图幅号对应的地图代码code = ''if(X10>99):code = str(X10)elif(X10>9):code = '0'+str(X10)else:code = '00'+str(X10)X = (H - 2 * H10 + 1) * 2 + (L - 2 * L10 + 1) + 1 #旧图幅号对应的地图代码if(X==1):code += "-A"elif(X==2):code += "-B"elif(X==3):code += "-C"elif(X==4):code += "-D"print('>>旧【5万】图幅号:' + TFstr[0] + '-' + TFstr[1:3]+'-'+code)# 旧图幅转新图幅
def Old2New():TFstr = input('请输入旧版图幅号:') #I-48-060-CtfArr = TFstr.split('-')if(len(tfArr)==1):print('CUO')elif(len(tfArr)==2):print(tfArr[0] + tfArr[1])elif(len(tfArr)==4):#5W I-48-060-Cx10 = int(tfArr[2])x5 = -1if (tfArr[3] == "A"):x5 = 1elif (tfArr[3] == "B"):x5 = 2elif (tfArr[3] == "C"):x5 = 3;elif (tfArr[3] == "D"):x5 = 4;else:returnh10 = (x10 - 1) // 12 + 1l10 = (x10 + 11) % 12 + 1h5 = 2 * h10 + (x5 - 1) // 2 - 1l5 = 2 * l10 + (x5 + 1) % 2 - 1h5s = ''if (h5 < 10):h5s = "00" + str(h5)elif (h5 < 100):h5s = "0" + str(h5)else:h5s = str(h5)l5s = ''if (l5 < 10):l5s = "00" + str(l5)elif (l5 < 100):l5s = "0" + str(l5)else:l5s = str(l5)print('>>新幅号:'+tfArr[0] + tfArr[1] + "E" + h5s + l5s)passif __name__ == '__main__':while(True):selectModel = input('''请选择转换方式:\n 1、新图幅号转旧图幅号;\n 2、旧图幅号转新图幅号。\n 3、退出。\n ----------------\n''')if(selectModel == '1'):New2Old()elif(selectModel == '2'):Old2New()elif(selectModel == '3'):breakelse:print('选择有误!\n----------------\n')print('----------------\n')

新旧图幅号转换(Python3)相关推荐

  1. 地图分幅计算 之四 新旧图幅号转换及实现(C++)

    网上好多新旧图幅转换的代码或资料,但大部分不完整且有错误,现将整理后的代码供大家分享,如有问题,请大家指正. 1.旧图幅号转新图幅号 //旧图幅号转到新图幅号 string SheetNoConver ...

  2. 城市动能转换_地理答啦:高速公路过境,省道国道穿城——济南北跨,建设新旧动能转换先行区应当关注的问题...

    对于山东济南新旧动能转换先行区的道路规划,专注于地理知识和旅行资讯的--地理答啦认为,最关键的一个问题是没有有效解决高速公路过境和普通省道国道的穿城问题. 从济南黄河北地区的交通现状来看,目前有青银高 ...

  3. 新经济专家陈宗建:山东将是全球新经济主战场山东新旧动能转换专访报道

    2019独角兽企业重金招聘Python工程师标准>>> 本网讯 (特约记者 张强)在中国进入高质量发展的新时代节点上,中国国务院于2018年1月3日以"一号文件" ...

  4. 新旧动能转换要紧抓资本市场建设动力 ——陈宗建谈山东自贸区背景下的经济结构转型升级

    新旧动能转换要紧抓资本市场建设动力 --陈宗建谈山东自贸区背景下的经济结构转型升级 [中国公益在线深圳讯](全媒体记者  张强 报道)国务院公布新设立的6个自由贸易区中山东省就占了三个,分别是济南片区 ...

  5. 城市动能转换_城市经济发展新旧动能转换调研报告

    城市经济发展新旧动能转换调研报告 区商务局 按照新旧动能转换重大政策有关材料的提报要求,区商务局组织开展 了城市经济新旧动能转换专题调研.现将有关调研情况报告如下. 一.城市经济新动能焕发新生机 近年 ...

  6. 2015(4)软件工程,软件运行与维护,新旧系统转换策略,遗留系统的演化策略,数据转换与数据迁移...

    试题四 随着信息化的发展,某银行的中心账务系统,从城市中心.省中心模式已经升级到全国中心模式.但是处理各种代收代付业务的银行中间业务系统,目前仍然采用省中心模式,由各省自行负责,使得全国中间业务管理非 ...

  7. SU数据新旧格式转换问题

    最近在用SU做处理,用本机的SU程序对甲方给的数据进行处理时,总是报道头有问题.查了一下,发现甲方给的数据使用低版本的SU生成的,所以需要转换成新版本的数据格式. SU旧格式转新格式的命令为:suol ...

  8. 详解java中的日期与时间;新旧API对比;各种日期格式转换

    一.基本概念 1.本地时间 不同的时区,在同一时刻,本地时间是不同的. 全球一共分为24个时区,伦敦所在的时区称为标准时区,其他时区按东/西偏移的小时区分,北京所在的时区是东八区. 2.时区 GMT ...

  9. odoo10参考系列--ORM API 二(新旧API兼容性、模型参考和方法修饰符)

    新API与旧API的兼容性 现在的Odoo是从就的(不规律的)API过渡来的,它可能需要从一个手动桥接到另一个手动桥接: RPC层(XML-RPC和RPC)是在旧的API的形式表达,表达的纯粹的方法在 ...

最新文章

  1. 【Android】入门级连接网络示例: 网页浏览和播放网络MP3
  2. python工程师薪资坑吗-入坑Python爬虫值不值?
  3. linux下目录的个个文件夹含义
  4. html5测试 2345,HTML5实例测试
  5. 关于核定区域电网2018—2019年输电价格的通知
  6. 桥接路由器总是掉线_多路由的无线桥接步骤
  7. 2018.10.13 bzoj1834: [ZJOI2010]network 网络扩容(最大流+费用流)
  8. 提示JS错误:WebForm_PostBackOptions 未定义
  9. java排队系统模型,MMC排队系统模型
  10. linux-优化内核参数 /etc/sysctl.conf
  11. 《转》SAP RM07扩展
  12. jQuery特效:实现微博发布界面
  13. PHP 调用阿里云短信服务API操作短信模板(增删改查)
  14. 初学必看,NFine框架结构加MVC快速开发平台登录流程梳理(附源码)
  15. 应该如何写详细设计文档
  16. 通俗易懂解释什么是“中台”
  17. 计算机应用责编处理录用几率大吗,等待责编处理是什么意思
  18. 解决macOS邮件mail收取163邮件占用高CPU和下载不动的问题
  19. 10000电信固话如何设置呼叫转移
  20. 获取设备 AirPods、Apple TV、Apple Watch、HomePod、iPad、iPad Air、iPad Pro、iPad mini、iPhone、iPod touch的型号

热门文章

  1. 详解磁盘IO、网络IO、零拷贝IO、BIO、NIO、AIO、IO多路复用(select、poll、epoll)
  2. 对PHP文件进行加解密:ZendGuard加密与ZendLoader解密
  3. 百度地图---之---桩号转坐标
  4. W25Q80和GD25Q80
  5. 智能ABC输入法破解特别版5.23下载 - xp/windows7通用
  6. 容联云助力北京市人社局、科协举办人工智能高级研修班
  7. 东软计算机网络答案,计算机网络基础选择题(成都东软学院所有网络)
  8. android:layout_marginRight 不起作用解决方法
  9. 糖友如何监测血糖水平
  10. 如何结合 Scrum 和 Kanban