<big id="a5mua"></big>

      <tt id="a5mua"><dfn id="a5mua"></dfn></tt>
      <wbr id="a5mua"><sup id="a5mua"></sup></wbr>

        
        

      1. 亚洲综合小综合中文字幕,国产久爱免费精品视频,精品国产品香蕉在线,国产午夜精品在人线播放,精品一二三四区在线观看,国产成人无码免费看视频软件 ,色欲久久人妻内射,午夜在线观看成人av
        zmrs163
        級別: 家園常客
        精華主題: 0
        發帖數量: 423 個
        工控威望: 574 點
        下載積分: 1594 分
        在線時間: 348(小時)
        注冊時間: 2017-06-12
        最后登錄: 2025-12-17
        查看zmrs163的 主題 / 回貼
        樓主  發表于: 2025-07-23 17:21
        隨著一些機型轉換,我們的程序也需要進行轉換,一些轉換可以通過軟件自動完成,一些轉換需要人工進行更改。這個帖子主要討論的是地址變化時的轉換方式。
        目前來說,三菱的梯形圖可以導出成CSV文件,所有的軟元件在這個CSV文件中都可以看到。如果我們直接操作這個CSV文件對程序進行轉換,顯然可以更加方便得轉程序,因為我們可以借助一些腳本提升操作效率,一些情況下,地址存在重疊的情況,比如X0改成X10,但是原來的X10要改成X20,這種情況用軟件批量替換要分兩次走,一個不注意要進行大量返工,以下是我自己寫的python腳本的代碼,自己隨意寫的,有能力有需要的同志可以自己制作類似的,含有FB的我目前還沒測試,不過應該問題不大,畢竟只是實參需要替換一下。
        import csv

        path = r""    #導出程序CSV文件的地址
        path2 = r""  #生成一個文件,包含了所有的軟元件地址,需要手動在其中第二列填寫變更后的地址
        path3 = r""  #生成的新文件的地址
        before_list = []  #原程序所有的地址列表
        address_dict = dict()  #存儲映射關系的字典


        # 讀取所有的地址
        r = 1
        with open(path, mode='r',encoding='utf-16-le') as file:
            for line in file:
                line_splited = line.split('\t')
                if r >= 4:
                    add = line_splited[3].strip('"')
                    if add != '' and add not in before_list:
                        before_list.append(add)
                r += 1


        # 生成CSV,存儲所有的地址,需要手動在其中第二列填寫變更后的地址
        s = input("是否生成TRANS,Y/N")
        if s=="Y":
            with open(path2, mode='w',encoding='utf-16-le',newline="") as file:
                csv_writer = csv.writer(file)
                before_list.sort()
                for add in before_list:
                    csv_writer.writerow([add])


        # 自行填寫TRANS后再讀取,wps保存編碼為ANSI,默認好像就是這個編碼
        s = input("任意鍵繼續讀取TRANS")
        with open(path2, mode='r') as file:
            csv_reader = csv.reader(file)
            for row in csv_reader:
                if row[1] != "":
                    address_dict[row[0]] = row[1]
        for k,v in address_dict.items():
            print(k,v)

        # 重新生成程序文件
        index = 1
        with open(path, mode='r',encoding='utf-16-le') as file:
            new_file = open(path3,mode='w',encoding='utf-16-le')
            for line in file:
                if index >= 4:
                    r = [s.strip("\"") for s in line.split('\t')]
                    old_address = r[3]  #替換主要由這三行進行
                    new_address = address_dict.get(r[3],r[3])
                    new_file.write(line.replace(old_address,new_address))
                else:
                    new_file.write(line)
                index += 1

        new_file.close()

        主站蜘蛛池模板: 亚洲欧美综合中文| 国产美女被遭高潮免费网站| 中文字幕日韩有码一区| 老熟女乱了伦| 亚洲嫩模一区二区三区| 白嫩少妇无套内谢视频| 日本中文字幕乱码免费| 四虎影视4hu4虎成人| 好男人官网资源在线观看| 老少配老妇老熟女中文普通话| 精品国产一区二区三区大| 亚洲国产av无码精品无广告| 国产在线午夜不卡精品影院| 永久免费无码av在线网站| 视频一区二区三区刚刚碰| 国产精品美女一区二三区| 欧美饥渴熟妇高潮喷水| 18av千部影片| 亚洲欧洲精品国产区| 在线观看视频一区二区三区| 国产极品视频一区二区三区| 国产日韩av二区三区| 亚洲AV网一区二区三区| 国产美女被遭高潮免费网站| 18禁男女爽爽爽午夜网站免费| 亚洲日韩国产精品第一页一区 | 四虎永久在线精品无码视频| 欧美亚洲h在线一区二区| 偷自拍另类亚洲清纯唯美| 亚洲国产日韩A在线亚洲| 亚洲午夜理论片在线观看| 欧美zozo另类人禽交| 在线免费播放av观看| 国产蜜臀久久av一区二区| 精品日韩人妻中文字幕| 国产免费人成网站在线播放| 国产三级精品在线免费| 一本大道无码高清| 国产精品国产精品偷麻豆| 国产久免费热视频在线观看| 中日韩精品视频一区二区三区 |