Your IP : 216.73.216.213
3
� fq � @ s, d Z G dd� d�Zdd� Zedkr(e� dS )z1
Markov chain simulation of words or characters.
c @ s, e Zd Zdd� Zdd� Zdd� Zdd� Zd S )
�Markovc C s || _ || _i | _d S )N)�histsize�choice�trans)�selfr r � r �6/opt/alt/python36/lib64/python3.6/Tools/demo/markov.py�__init__ s zMarkov.__init__c C s | j j|g �j|� d S )N)r �
setdefault�append)r �state�nextr r r �add
s z
Markov.addc C sz | j }| j}|d |d d� � x<tt|��D ],}||td|| �|� |||d � � q,W ||t|�| d � d � d S )N� � )r r
�range�len�max)r �seq�nr
�ir r r �put s ,z
Markov.putc C s` | j }| j}| j}||d �}x<|tdt|�| �d � }|| }||�}|sPP ||7 }q W |S )Nr )r r r r r )r r r r r ZsubseqZoptionsr r r r �get s z
Markov.getN)�__name__�
__module__�__qualname__r r
r r r r r r r s r c C sd dd l } dd l}dd l}| jdd � }y|j|d�\}}W n� |jk
r� td| jd � td� td� td� td� td � td
� td� td� td
� td� td� td� | jd� Y nX d}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�|�rt|�}n
d!j|�}|
j|� �q�W �qpW W n tk
�rL td"� Y nX |
j�sbtd#� d S |�rptd$� |dk�r�x@|
jj� D ]2}|d k�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|�d 7 }�qW t� t� �q�W d S )(Nr r Z0123456789cdwqz"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�intr r �stdin�isatty�open�read�close�split�tuple�joinr �KeyboardInterruptr �keysr �reprr )r"