Your IP : 216.73.216.213


Current Path : /opt/alt/python34/lib64/python3.4/Tools/demo/__pycache__/
Upload File :
Current File : //opt/alt/python34/lib64/python3.4/Tools/demo/__pycache__/markov.cpython-34.pyo

�
e fq�@s?dZGdd�d�Zdd�Zedkr;e�ndS)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/python34/lib64/python3.4/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�}xQ|tdt|�|�d�}||}||�}|sqPn||7}q.W|S)Nr)rrrrr)rrrrrZsubseqZoptionsrrrr�gets			#
z
Markov.getN)�__name__�
__module__�__qualname__rr
rrrrrrrsrcCsiddl}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��}n|dkrtd}n|dkr�|d7}n|dkr�d}n|dkrd}qqW|s�dg}nt||j	�}
yx�|D]�}|dkr#|j
}|j�r2td�q�q2nt|d�}|rKtd|d�n|j
�}
|j�|
jd�}xm|D]e}|dkr�td �n|j�}|rw|r�t|�}nd!j|�}|
j|�qwqwWq�WWntk
rtd"�YnX|
jstd#�dS|r.td$�n|dkr�xR|
jj�D]A}|dksnt|�|krJtt|�|
j|�qJqJW|dkr�ttd%�|
jd%�nt�nx�|
j�}|r�|}n|j�}d}d&}xX|D]P}|t|�|kr+t�d}nt|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