3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Pythonで文章をヒソカっぽく改変するコードを書いた

Posted at

はじめに

日本語の文章をヒソカっぽく書き換えるだけのコードです。
ヒソカをよく知らない人はハンターハンターを読んでください。

環境

python3.9.4(バージョンは何でもいい)
Windows(何でもいい)

処理

をランダムに♠,♣,♦,♥に置換する。
10%の確率で三点リーダーが入り込む。

コード

Pythonで実装したコード。

hisoka.py
# coding: UTF-8

import random

class Hisoka:
    def __init__(self, leader="・・・", leader_percentage=0.1, trump=["", "", "", ""], split_text=""):
        self.leader = leader
        self.leader_percentage = leader_percentage
        self.trump = trump
        self.split_text = split_text
    
    def __call__(self, text):
        # 区切り文字で文章を分ける
        text_list = text.split(self.split_text)[:-1]
        output_text = ""

        for text_data in text_list:
            output_text += text_data
            if random.random() < self.leader_percentage:
                output_text += self.leader
            output_text += random.choice(self.trump)
        return output_text


if __name__ == "__main__":
    text = "メロスは激怒した。必ず、かの邪智暴虐の王を除かなければならぬと決意した。メロスには政治がわからぬ。メロスは、村の牧人である。笛を吹き、羊と遊んで暮して来た。けれども邪悪に対しては、人一倍に敏感であった。"
    hisoka = Hisoka()
    print(hisoka(text))

実際の出力

下記コマンドで実行。

python hisoka.py

出力内容(実行するたびにランダム変化)

メロスは激怒した♠必ず、かの邪智暴虐の王を除かなければならぬと決意した・・・♣メロスには政治がわからぬ♦メロスは、村の牧人である・・・♠笛を吹き、羊と遊んで暮して来た♥けれども邪悪に対しては、人一倍に敏感であった♦

上までの内容に対して本スクリプトを実行した場合の出力

# はじめに
日本語の文章をヒソカっぽく書き換えるだけのコードです♠
ヒソカをよく知らない人はハンターハンターを読んでください♠

## 環境
python3.9.4(バージョンは何でもいい)
Windows(何でもいい)

# 処理
`♠`をランダムに`♠,♣,♦,♥`に置換する♠
10%の確率で三点リーダーが入り込む♣

## コード
Pythonで実装したコード♦
~~~以下略~~~

おわりに

皆さんはもっと有意義な時間の使い方をしてみてください・・・♦

3
1
0

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
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?