Your IP : 216.73.216.213


Current Path : /opt/alt/python35/lib64/python3.5/Tools/demo/__pycache__/
Upload File :
Current File : //opt/alt/python35/lib64/python3.5/Tools/demo/__pycache__/markov.cpython-35.opt-1.pyc



��Yfq�@s<dZGdd�d�Zdd�Zedkr8e�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/python35/lib64/python3.5/Tools/demo/markov.py�__init__s		zMarkov.__init__cCs |jj|g�j|�dS)N)r�
setdefault�append)r�state�nextrrr�add
sz
Markov.addcCs�|j}|j}|d|dd��xLtt|��D]8}||td||�|�|||d��q<W||t|�|d�d�dS)N��)rr
�range�len�max)r�seq�nr
�irrr�puts		6z
Markov.putcCs�|j}|j}|j}||d�}xN|tdt|�|�d�}||}||�}|snP||7}q.W|S)Nr)rrrrr)rrrrrZsubseqZoptionsrrrr�gets			#
z
Markov.getN)�__name__�
__module__�__qualname__rr
rrrrrrrsrcCs<ddl}ddl}ddl}|jdd�}y|j|d�\}}Wn�|jk
rtd|jd�td�td�td�td�td	�td
�td�td�td
�td�td�td�|jd�YnXd}d}d}x�|D]�\}}	d|koAdknr\t|dd��}|dkrnd}|dkr�|d7}|dkr�d}|dkrd}qW|s�dg}t||j	�}
y�x�|D]�}|dkr|j
}|j�rtd�q�nt|d�}|r3td|d�|j
�}
|j�|
jd�}xg|D]_}|dkr{td �|j�}|r_|r�t|�}nd!j|�}|
j|�q_Wq�WWntk
r�td"�YnX|
js�td#�dS|r
td$�|dkr�xO|
jj�D]>}|dksMt|�|kr)tt|�|
j|�q)W|dkr�ttd%�|
jd%�t�x�|
j�}|r�|}n|j�}d}d&}xU|D]M}|t|�|kr�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