관리-도구
편집 파일: _base.cpython-36.pyc
3 �Pf� � @ s4 d dl mZmZmZ d dlmZ G dd� de�ZdS )� )�absolute_import�division�unicode_literals)�Mappingc s: e Zd ZdZd� fdd� Zdd� Zdd� Zd d � Z� ZS )�TriezAbstract base class for triesNc s4 t t| �j� }� d krt|�S t� fdd�|D ��S )Nc s g | ]}|j � �r|�qS � )� startswith)�.0�x)�prefixr �/usr/lib/python3.6/_base.py� <listcomp> s zTrie.keys.<locals>.<listcomp>)�superr �keys�set)�selfr r )� __class__)r r r s z Trie.keysc C s$ x| j � D ]}|j|�r dS q W dS )NTF)r r )r r �keyr r r �has_keys_with_prefix s zTrie.has_keys_with_prefixc C sT || kr|S x:t dt|�d �D ]$}|d | � | kr |d | � S q W t|��d S )N� )�range�len�KeyError)r r �ir r r �longest_prefix s zTrie.longest_prefixc C s | j |�}|| | fS )N)r )r r Zlprefixr r r �longest_prefix_item$ s zTrie.longest_prefix_item)N) �__name__� __module__�__qualname__�__doc__r r r r � __classcell__r r )r r r s r N)Z __future__r r r �collectionsr r r r r r �<module> s