def peek_messages(self, queue_name, num_messages=None, timeout=None):
_validate_decryption_required(self.require_encryption, self.key_encryption_key,<EOL>self.key_resolver_function)<EOL>_validate_not_none('<STR_LIT>', queue_name)<EOL>request = HTTPRequest()<EOL>request.method = '<STR_LIT:GET>'<EOL>request.host_locations = self._get_host_locations(secondary=True)<EOL>request.path = _get_path(queue_name, True)<EOL>request.query = {<EOL>'<STR_LIT>': '<STR_LIT:true>',<EOL>'<STR_LIT>': _to_str(num_messages),<EOL>'<STR_LIT>': _int_to_str(timeout)<EOL>}<EOL>return self._perform_request(request, _convert_xml_to_queue_messages,<EOL>[self.decode_function, self.require_encryption,<EOL>self.key_encryption_key, self.key_resolver_function])<EOL>
Retrieves one or more messages from the front of the queue, but does
not alter the visibility of the message.

Only messages that are visible may be retrieved. When a message is retrieved 
for the first time with a call to get_messages, its dequeue_count property 
is set to 1. If it is not deleted and is subsequently retrieved again, the 
dequeue_count property is incremented. The client may use this value to 
determine how many times a message has been retrieved. Note that a call 
to peek_messages does not increment the value of DequeueCount, but returns 
this value for the client to read.

If the key-encryption-key or resolver field is set on the local service object, the messages will be
decrypted before being returned.

:param str queue_name:
    The name of the queue to peek messages from.
:param int num_messages:
    A nonzero integer value that specifies the number of
    messages to peek from the queue, up to a maximum of 32. By default,
    a single message is peeked from the queue with this operation.
:param int timeout:
    The server timeout, expressed in seconds.
:return: 
    A list of :class:`~azure.storage.queue.models.QueueMessage` objects. Note that 
    time_next_visible and pop_receipt will not be populated as peek does 
    not pop the message and can only retrieve already visible messages.
:rtype: list(:class:`~azure.storage.queue.models.QueueMessage`)