Your IP : 216.73.216.213


Current Path : /opt/alt/python36/lib64/python3.6/Tools/demo/__pycache__/
Upload File :
Current File : //opt/alt/python36/lib64/python3.6/Tools/demo/__pycache__/markov.cpython-36.pyc

3

� fq�@s,dZGdd�d�Zdd�Zedkr(e�dS)z1
Markov chain simulation of words or characters.
c@s,eZdZdd�Zdd�Zdd�Zdd�Zd	S)
�MarkovcCs||_||_i|_dS)N)�histsize�choice�trans)�selfrr�r�6/opt/alt/python36/lib64/python3.6/Tools/demo/markov.py�__init__szMarkov.__init__cCs|jj|g�j|�dS)N)r�
setdefault�append)r�state�nextrrr�add
sz
Markov.addcCsz|j}|j}|d|dd��x<tt|��D],}||td||�|�|||d��q,W||t|�|d�d�dS)N��)rr
�range�len�max)r�seq�nr
�irrr�puts,z
Markov.putcCs`|j}|j}|j}||d�}x<|tdt|�|�d�}||}||�}|sPP||7}q W|S)Nr)rrrrr)rrrrrZsubseqZoptionsrrrr�getsz
Markov.getN)�__name__�
__module__�__qualname__rr
rrrrrrrsrcCsdddl}ddl}ddl}|jdd�}y|j|d�\}}Wn�|jk
r�td|jd�td�td�td�td�td	�td
�td�td�td
�td�td�td�|jd�YnXd}d}d}xt|D]l\}}	d|ko�dkn�rt|dd��}|dk�r d}|dk�r2|d7}|dk�r@d}|dkr�d}q�W|�s\dg}t||j	�}
y�x�|D]�}|dk�r�|j
}|j��r�td��qpn
t|d�}|�r�td|d�|j
�}
|j�|
jd�}xR|D]J}|dk�r�td �|j�}|�r�|�rt|�}n
d!j|�}|
j|��q�W�qpWWntk
�rLtd"�YnX|
j�sbtd#�dS|�rptd$�|dk�r�x@|
jj�D]2}|dk�s�t|�|k�r�tt|�|
j|��q�W|dk�r�ttd%�|
jd%�t�x~|
j�}|�r�|}n|j�}d}d&}xF|D]>}|t|�|k�r,t�d}t|d!d'�|t|�d7}�qWt�t��q�WdS)(NrrZ0123456789cdwqz"Usage: %s [-#] [-cddqw] [file] ...zOptions:z$-#: 1-digit history size (default 2)z-c: characters (default)z	-w: wordsz-d: more debugging outputz-q: no debugging outputz3Input files (default stdin) are split in paragraphsz1separated blank lines and each paragraph is splitz0in words by whitespace, then reconcatenated withz#exactly one space separating words.z0Output consists of paragraphs separated by blankz4lines, where lines are no longer than 72 characters.�Fz-0z-9z-cz-dz-qz-wT�-zSorry, need stdin from file�rZ
processingz...z

zfeeding ...� z-Interrupted -- continue with data read so farzNo valid input fileszdone.��H)�end)�sys�random�getopt�argv�error�print�exit�intrr�stdin�isatty�open�read�close�split�tuple�joinr�KeyboardInterruptr�keysr�reprr)r"r#r$�argsZoptsrZdo_words�debug�o�a�m�filename�f�textZparalistZparaZwords�data�keyr�limit�wrrr�test's�














rA�__main__N)�__doc__rrArrrrr�<module>s U