gruns / furl

🌐 URL parsing and manipulation made easy.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

a method to set an individual query parameter without removing the rest or keeping the original value

DetachHead opened this issue · comments

from furl import furl


def url() -> furl:
    return furl("http://foo.com/?a=1&b=2")


print(url().set({"a": 3}))  # http://foo.com/?a=3
print(url().add({"a": 3}))  # http://foo.com/?a=1&b=2&a=3

# i would like to be able do this in one method:
print(url().remove(["a"]).add({"a": 3}))  # http://foo.com/?b=2&a=3

the current behavior of add where it supports multiple query params with the same value seems like an edge case imo