Requests throws "Value Error: too many values to unpack (expected 2)"

<!-- Summary. -->
Requests is throwing exception.

## Expected Result

<!-- What you expected. -->

## Actual Result

This is the stack trace of the exception
```
Traceback (most recent call last):
  File "test.py", line 65, in <module>
    get_data(lat, lon, start_timestamp, end_timestamp)
  File "test.py", line 35, in get_data
    result = requests.get(
  File "/usr/src/app/weather_provider/.venv/lib/python3.8/site-packages/requests/api.py", line 75, in get
    return request('get', url, params=params, **kwargs)
  File "/usr/src/app/weather_provider/.venv/lib/python3.8/site-packages/requests/api.py", line 61, in request
    return session.request(method=method, url=url, **kwargs)
  File "/usr/src/app/weather_provider/.venv/lib/python3.8/site-packages/requests/sessions.py", line 528, in request
    prep = self.prepare_request(req)
  File "/usr/src/app/weather_provider/.venv/lib/python3.8/site-packages/requests/sessions.py", line 456, in prepare_request
    p.prepare(
  File "/usr/src/app/weather_provider/.venv/lib/python3.8/site-packages/requests/models.py", line 316, in prepare
    self.prepare_url(url, params)
  File "/usr/src/app/weather_provider/.venv/lib/python3.8/site-packages/requests/models.py", line 434, in prepare_url
    enc_params = self._encode_params(params)
  File "/usr/src/app/weather_provider/.venv/lib/python3.8/site-packages/requests/models.py", line 97, in _encode_params
    for k, vs in to_key_val_list(data):
ValueError: too many values to unpack (expected 2)
```

## Reproduction Steps

Minimal script to reproduce error:

```python
import os
import pandas as pd
import requests
import sys

from dotenv import load_dotenv
load_dotenv()
from datetime import datetime, timedelta, timezone

NEW_IBM_DATETIME_FORMAT = '%Y-%m-%dT%H:%M:%SZ'

URL_BACKFILL = "https://api.weather.com/v3/wx/hod/r1/direct"
HISTORICAL_WEATHER_API_KEY = os.getenv("HISTORICAL_WEATHER_API_KEY")

request_headers = {
    "User-Agent": "Request-Promise",
    "Accept": "application/json",
    "Accept-Encoding": "gzip",
}

def get_data(lat, lon, start_timestamp, end_timestamp=None):
    params_d = {
        "geocode": f"{lat},{lon}",
        "startDateTime": start_timestamp.strftime(NEW_IBM_DATETIME_FORMAT),
        "endDateTime": end_timestamp.strftime(NEW_IBM_DATETIME_FORMAT),
        "units": "m",
        "format": "json",
        "apiKey": HISTORICAL_WEATHER_API_KEY,
    },

    # This throws exception
    result = requests.get(
        URL_BACKFILL,
        params=params_d,
        timeout=15
    )

    # This works just fine
    result = requests.get(
        URL_BACKFILL,
        params={
            "geocode": f"{lat},{lon}",
            "startDateTime": start_timestamp.strftime(NEW_IBM_DATETIME_FORMAT),
            "endDateTime": end_timestamp.strftime(NEW_IBM_DATETIME_FORMAT),
            "units": "m",
            "format": "json",
            "apiKey": HISTORICAL_WEATHER_API_KEY,
        },
    )
    print(result)

if __name__ == '__main__':
    lat = 41.636947 
    lon = -74.403541

    start_timestamp = datetime(2021, 8, 28, 0, tzinfo=timezone.utc)
    end_timestamp = datetime(2021, 8, 31, 0, tzinfo=timezone.utc)

    get_data(lat, lon, start_timestamp, end_timestamp)
```

## System Information

    $ python -m requests.help

```json
{
  "chardet": {
    "version": null
  },
  "charset_normalizer": {
    "version": "2.0.9"
  },
  "cryptography": {
    "version": ""
  },
  "idna": {
    "version": "3.3"
  },
  "implementation": {
    "name": "CPython",
    "version": "3.8.12"
  },
  "platform": {
    "release": "4.15.0-163-generic",
    "system": "Linux"
  },
  "pyOpenSSL": {
    "openssl_version": "",
    "version": null
  },
  "requests": {
    "version": "2.26.0"
  },
  "system_ssl": {
    "version": "101010bf"
  },
  "urllib3": {
    "version": "1.26.7"
  },
  "using_charset_normalizer": true,
  "using_pyopenssl": false
}
```

<!-- This command is only available on Requests v2.16.4 and greater. Otherwise,
please provide some basic information about your system (Python version,
operating system, &c). -->


You're passing a single tuple to params. You're giving requests garbage.

Unfortunately, it seems this is a request for help instead of a report of a defect in the project. Please use [StackOverflow](https://stackoverflow.com) for general usage questions instead and only report defects here.

My bad. It's a python gotcha I was not aware of. Thank you.