Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

Github copilotをつかう その3:自動出力をもう少し遊ぶ

実際のところ

コメントから内容を推測

# return random 30 charactors string
def make_random_string():
    return ''.join([chr(random.randint(0, 255)) for i in range(30)])


少し突っ込んで、以下のような感じで返り値に細工をした状態で

# return raudom 12 charactors string
def make_random_string_12():
   return 'str:' + text1 + text2

returnの上に"text1 ="とまでやると……以下のようなレコメンドが出てきます。

   text1 = ''.join([chr(random.randint(0, 255)) for i in range(6)])

ここで6を3に変更し"text2 ="とやると

   text2 = ''.join([chr(random.randint(0, 255)) for i in range(3)])

と、やや惜しい感じになるのですが"3"を消してやると推奨として"9"がでてきてくれます。

   text2 = ''.join([chr(random.randint(0, 255)) for i in range(9)])

内容推測はメソッド内のコメントにも適用されるため、以下のような書き方もできます
コメント一行でやる事は一個に絞った方がいい内容がでてきます。
可読性向上矯正ギプスかな……??

def my_great_output_function(string):
    # randum 12 alphabet string
    random_string = make_random_string_12()
    # replace 'z' to 'a' in randum_string
    randam_string = random_string.replace('z', 'a')