LoginSignup
1
2

Pythonで写経

Last updated at Posted at 2023-12-17

はじめに

 先日、こんな記事を見かけました。

 これは面白い!と思ったので、自分も作ってみることにしました。

般若心経を写経

 NHKのサイトに載っていた「般若心経」を参考に制作することにしました。

notepad.py
import pyautogui
import pyperclip
import subprocess
import time

print("cyber-yuito723/HeartSutra\n\nメモ帳が起動した後、3秒後に写経がはじまります。")
time.sleep(3)
subprocess.Popen("notepad.exe")
time.sleep(3)

def display(letter):
    pyperclip.copy(letter)
    time.sleep(0.3)
    pyautogui.hotkey("ctrl", "v")
    time.sleep(0.1)

script_1 = ("", "", "", "", "", " ", "", "", "", "", "", "", "", "", "")
script_2 = ("", "", "", "", "", "", " ", "", "", "", "", "")
script_3 = ("", "", "", " ", "", "", "", "", " ", "", "", "", "")
script_4 = ("", "", "", "", " ", "", "", "", "")
script_5 = ("", "", "", "", " ", "", "", "", "")
script_6 = ("", "", "", " ", "", "", "", "", "")
script_7 = ("", "", "", "", " ", "", "", "", "", " ", "", "", "", "")
script_8 = ("", "", "", "", " ", "", "", "", "", "", "", "")
script_9 = ("", "", "", "", "", "", "", " ", "", "", "", "", "", "", "")
script_10 = ("", "", "", " ", "", "", "", "", "", "")
script_11 = ("", "", "", " ", "", "", "", "", "")
script_12 = ("", "", "", "", "", " ", "", "", "", "", "")
script_13 = ("", "", "", "", "", " ", "", "", "", "", "", " ", "", "", "", "", "")
script_14 = ("", "", "", "", " ", "", "", "", "", "", "", "", "")
script_15 = ("", "", "", "", " ", "", "", "", "", " ", "", "", "", "")
script_16 = ("", "", "", "", "", "", "", "", " ", "", "", "", "")
script_17 = ("", "", "", "", " ", "", "", "", "", "", "", "", "")
script_18 = ("", "", "", "", "", "", "", "", "", "")
script_19 = ("", "", "", "", "", "", "", "")
script_20 = ("", "", "", "", " ", "", "", "", "")
script_21 = ("", "", "", "", " ", "", "", "", "", "")
script_22 = ("", "", "", "", "", " ", "", "", "", "")
script_23 = ("", "", "", "", "", "", "", "", "")
script_24 = ("", "", "", "")
script_25 = ("", "", " ", "", "", " ", "", "", "", "", " ", "", "", "", "", "")
script_26 = ("", "", "", "", "")
script_27 = ("", "", "", "")

scripts = (script_1, script_2, script_3, script_4, script_5, script_6, script_7, script_8, script_9, script_10, script_11, script_12, script_13, script_14, script_15, script_16, script_17, script_18, script_19, script_20, script_21, script_22, script_23, script_24, script_25, script_26, script_27)

for i in scripts:
    for j in i:
        display(j)
    pyautogui.press("enter", presses = 1)

input("\n御勤めお疲れさまでした。\n終了する場合は、エンターキーを押してください。")

 こんな感じのコードを書きました。タプルの中に般若心経を一文字ずつ入れておいてそれをfor文で一文字ずつ取り出すつくりにしました。以下のリポジトリで公開しています。
notepad.exe(メモ帳)を起動してから、写経が始まるようにしています。なので、このコードではWindows上でしか動きません。

おわりに

 Pythonの勉強をすることも功徳を積むことも同時にすることができました。これからもニッチなコードと記事を書いていきたいと思います。

1
2
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2