Pyjo.Parameters - Parameters¶
import Pyjo.Parameters
# Parse
params = Pyjo.Parameters.new('foo=bar&baz=23')
print(params.param('baz'))
# Build
params = Pyjo.Parameters.new(foo='bar', baz=23)
params.append(i=u'♥ pyjo')
print(params)
Pyjo.Parameters
is a container for form parameters used by Pyjo.URL
and based on RFC 3986 as well as the HTML Living Standard.
Classes¶
-
class
Pyjo.Parameters.
Pyjo_Parameters
(*args, **kwargs)¶ Pyjo.Parameters
inherits all attributes and methods fromPyjo.Base
andPyjo.String.Mixin
and implements the following new ones.-
__bool__
()¶ boolean = bool(params)
Always true. (Python 3.x)
-
__init__
(*args, **kwargs)¶ params = Pyjo.Parameters.new() params = Pyjo.Parameters.new('foo=b%3Bar&baz=23') params = Pyjo.Parameters.new(foo='b&ar') params = Pyjo.Parameters.new(foo=['ba&r', 'baz']) params = Pyjo.Parameters.new(foo=['bar', 'baz'], bar=23)
Construct a new
Pyjo.Parameters
object andparse()
parameters if necessary.
-
__iter__
()¶ pairs = list(params)
Iterator based on
params
. Note that this will normalize the parameters.
-
__nonzero__
()¶ boolean = bool(params)
Always true. (Python 2.x)
-
append
(*args, **kwargs)¶ params = params.append(foo='ba&r') params = params.append(foo=['ba&r', 'baz']) params = params.append(('foo', ['bar', 'baz']), ('bar', 23)) params = params.append(Pyjo.Params.new())
Append parameters. Note that this method will normalize the parameters.
# "foo=bar&foo=baz" Pyjo.Parameters.new('foo=bar').append(Pyjo.Parameters.new('foo=baz')) # "foo=bar&foo=baz" Pyjo.Parameters.new('foo=bar').append(foo='baz') # "foo=bar&foo=baz&foo=yada" Pyjo.Parameters.new('foo=bar').append(foo=['baz', 'yada']) # "foo=bar&foo=baz&foo=yada&bar=23" Pyjo.Parameters.new('foo=bar').append(('foo', ['baz', 'yada']), ('bar', 23))
-
charset
= None¶ charset = params.charset params.charset = 'utf-8'
Charset used for encoding and decoding parameters, defaults to
utf-8
.# Disable encoding and decoding params.charset = None
-
clone
()¶ params2 = params.clone()
Clone parameters.
-
every_param
(name)¶ values = params.every_param('foo')
Similar to
param()
, but returns all values sharing the same name as a list. Note that this method will normalize the parameters.# Get first value print(params.every_param('foo')[0])
-
merge
(*args, **kwargs)¶ params = params.merge(('foo', 'ba&r'),) params = params.merge(foo='baz') params = params.merge(foo=['ba&r', 'baz']) params = params.merge(('foo', ['bar', 'baz']), ('bar', 23)) params = params.merge(Pyjo.Parameters.new())
Merge parameters. Note that this method will normalize the parameters.
# "foo=baz" Pyjo.Parameters.new('foo=bar').merge(Pyjo.Parameters.new('foo=baz')) # "yada=yada&foo=baz" Pyjo.Parameters.new('foo=bar&yada=yada').merge(foo='baz') # "yada=yada" Pyjo.Parameters.new('foo=bar&yada=yada').merge(foo=None)
-
names
¶ names = params.names
Return a list of all parameter names.
# Names of all parameters for n in params.names: print(n)
-
pairs
¶ array = params.pairs params.pairs = [('foo', 'b&ar'), ('baz', 23)]
Parsed parameters. Note that setting this property will normalize the parameters.
-
param
(name, value=None)¶ value = params.param('foo') foo, baz = params.param(['foo', 'baz']) params = params.param('foo', 'ba&r') params = params.param('foo', ['ba;r', 'baz'])
Access parameter values. If there are multiple values sharing the same name, and you want to access more than just the last one, you can use
every_param()
. Note that this method will normalize the parameters.
-
parse
(*args, **kwargs)¶ params = params.parse('foo=b%3Bar&baz=23')
Parse parameters.
-
remove
(name)¶ params = params.remove('foo')
Remove parameters. Note that this method will normalize the parameters.
# "bar=yada" Pyjo.Parameters.new('foo=bar&foo=baz&bar=yada').remove('foo')
-
to_bytes
()¶ bstring = params.to_bytes()
Turn parameters into a bytes string.
-
to_dict
()¶ d = params.to_dict()
Turn parameters into a
dict
. Note that this method will normalize the parameters.# "baz" Pyjo.Parameters.new('foo=bar&foo=baz').to_dict()['foo'][1]
-
to_str
()¶ string = params.to_str()
Turn parameters into a string.
-
-
Pyjo.Parameters.
object
¶ alias of
Pyjo_Parameters