No this does not mean it doesn't accept http requests.
What's happening is that your browser (or python) is requesting the website on http (port 80) and it was redirected to https (port 443).
Redirection means that the server responded with http response of status code 301 or 302. You can view this by viewing the
response.history within your response from python requests.
Your browser then understood the redirecting, and requested again the same website , but over https (port 443). In order for this to work, the server had to expose http (port 80) just to serve redirection response.
Usually when we say STRICT https, we mean something different.
It means the server still does all the above as before, but additionally adds a strict-transport-security header in the response from the server. This lets the browser know that any future requests should be made over https (port 443) directly, rather than waiting for the redirect. The browser once seeing this, will cache the header value.
From then on, until the header expires, the browser will perform an 'internal redirect' -- i.e. it will not even send out a http request over the network, rather it will internally redirect the requests to https. You can see this via a 307 redirect in Google Chrome developer tools. Unfortunately I'm not sure if you can replicate this behavior via python requests.
In summary, it's best practice to always have a port 80 open on your website to redirect users to port 443, and then have HSTS to ensure all future visits from those users will come directly to https (instead of just http).
Not having http will usually result in user-error, as the default for browsers is to attempt a plain-text http connection to site unless https is explicitly specified. If your site doesn't have http open, most users will fail at connecting to your site.
Hope that helps.