Esempio n. 1
0
def api_quick_age(convert, year) :
  mysql = MySQL.MySQL()
  if convert == "age" :
    # 年齢から誕生年
    rows = mysql.query("SELECT year, gengo FROM QuickAge WHERE age = {0}".format(year))
    if len(rows) == 0 :
      result = "エラー: 年齢が不正"
    else :
      row = rows[0]
      result = str(row[0]) + "," + row[1]
  elif convert == "born" :
    # 誕生年から年齢
    if Text.isdigit(year) :
      # age は西暦
      rows = mysql.query("SELECT age FROM QuickAge WHERE year={0}".format(year))
      if len(rows) == 0 :
        result = "エラー: 西暦が不正"
      else :
        result = rows[0]
    else :
      # year は和暦
      if year.startswith('T') :
        year = "大正" + Text.substring(year, 1) + "年";
      elif year.startswith('S') :
        if Text.substring(year, 1) == '1' :
          year = "昭和元年";
        else :
          year = "昭和" + Text.substring(year, 1) + "年";
      elif year.startswith('H') :
        if Text.substring(year, 1) == '1' :
          year = "平成元年";
        else :
          year = "平成" + Text.substring(year, 1) + "年";
      elif year.startswith('R') :
        if Text.substring(year, 1) == '1' :
          year = "令和元年"
        else :
          year = "令和" + Text.substring(year, 1) + "年";
      else :
        result = "エラー: 和暦文字が不正"
        return result
      print(year)
      rows = mysql.query("SELECT age FROM QuickAge WHERE gengo='{0}'".format(year))
      if len(rows) == 0 :
        result = "エラー: 和暦が不正"
      else :
        result = rows[0]     
  else :
    # エラー
    result = "エラー: 不正な変換"
  return result
Esempio n. 2
0
    return


# 条件入力
fileName = ""
interpreterNo = 1
if Common.count_args() < 2:
    fileName = Common.readline("対象のファイル・フォルダを指定してください。> ")
    print(INTERPRETERS)
    interpreterNo = int(Common.readline("番号を選択してください。> "))
else:
    fileName = Common.args(0)
    interpreterNo = int(Common.args(1))

interpreterLines = INTERPRETERS.split('\n')
interpreter = Text.substring(interpreterLines[interpreterNo - 1], 3)
print(interpreter + " が " + fileName + " に適用されます。")
a = Common.readline("実行しますか? (y/n)")
if a != 'y':
    Common.stop(9, "実行が取り消されました。")

# インタプリタ適用
if fs.isFile(fileName):
    apply(fileName, interpreter)
else:
    files = fs.listFiles2(fileName)
    for f in files:
        print(f)
        ext = fs.getExtension(f)
        if ext == ".cgi":
            apply(f, interpreter)
Esempio n. 3
0
def rename_files(folder):
    # 画像ファイル一覧を得る。
    print(folder)
    files = fs.listFiles(folder, asstr=True)
    # 画像ファイルをリネーム
    for fpath in files:
        #fpath = Common.from_bytes(f)
        ext = fs.getExtension(fpath).lower()
        # 画像ファイルのみを対象にする。
        if ext == ".jpg" or ext == ".png" or ext == ".gif":
            # ファイル名が nnnnnnn_pnn[.jpg] か
            fname = fs.getFileName(fpath)
            ff = Text.split("_", fname)
            if not (ext in ff[1]):
                ff[1] += ext
            if len(ff) == 3:
                # 3分割できて 'master' が含まれる場合は 'master..' 部分を削除する。
                #fname_old = fname
                fname = ff[0] + '_' + ff[1]
                #print(fname_old + " to " + fname)
            elif len(ff) != 2:
                # _ で2分割できない場合(ファイル名の形式が異なる場合)はスキップする。
                print("Skipped " + fname)
                continue
            else:
                # その他の場合は何もしない。(2分割できた場合)
                pass
            # 連続番号部分の形式を確認する。
            sf = ff[1]
            if ff[1].startswith('p'):
                if len(ff[1]) == 6 or (len(ff) == 3 and len(ff[1]) == 2):
                    # 連続番号が1桁の場合
                    sf = "p0" + Text.substring(ff[1], 1)
                    newname = folder + "/" + ff[0] + "_" + sf
                    fs.move(fpath, newname)
                    print("Renamed: " + newname)
                elif len(ff) == 3 and len(ff[1]) == 7:
                    # _master1200 があり連続番号が2桁の場合
                    newname = folder + "/" + fname
                    fs.move(fpath, newname)
                elif len(ff[1]) == 8 or (len(ff) == 3 and len(ff[1]) == 4):
                    # 連続番号が3桁または連続番号が3桁かつ _master1200 がある場合
                    sn = Text.substring(ff[1], 1)
                    if sn == '1':
                        # 連続番号が3桁かつ100番台の場合
                        sf = "q" + Text.substring(ff[1], 2)
                        newname = folder + "/" + ff[0] + "_" + sf
                        fs.move(fpath, newname)
                        print("Renamed: " + newname)
                    elif sn == '2':
                        # 連続番号が3桁かつ200番台の場合
                        sf = "r" + Text.substring(ff[1], 2)
                        newname = folder + "/" + ff[0] + "_" + sf
                        fs.move(fpath, newname)
                        print("Renamed: " + newname)
                    else:
                        # 連続番号が3桁かつ300番台以上の場合はサポートしない(スキップする)
                        pass
                else:
                    # 連続番号が2桁の場合
                    #print("Passed: " + fpath)
                    pass
        else:
            #fs.move(fpath, fpath + ".jpg")
            print("Non image passed: " + fpath)
    return