Your Script Is Producing Strange Output. Here Is What It Actually Means.
You ran your script and something came back but it is not what you expected. Maybe it is a wall of text with strange symbols. Maybe it is numbers where you…
You ran your script and something came back but it is not what you expected. Maybe it is a wall of text with strange symbols. Maybe it is numbers where you expected words. Maybe it is a long string that looks like random characters. Maybe nothing came back at all. You built this with Claude, ChatGPT, or Gemini and it worked differently when you tested it. What is your script actually trying to tell you?
This post covers the most common types of strange output, what each one means, and what to do about it.
Type 1: A Wall of Curly Brackets and Colons
What it looks like:
{"name": "Sarah", "email": "sarah@example.com", "orders": [{"id": 1042, "total": 84.99}]}
What it means: Your script received or produced JSON data. This is not broken output. JSON is a standard format for organising data that almost all APIs use. It looks strange because it is compact and unformatted.
What to do: Paste the output into jsonformatter.org to see it laid out cleanly. If you want your script to display specific values from the JSON rather than the whole thing, ask your AI: “My script is outputting JSON. Can you update it to extract just [describe the specific values you want] and display them in a readable format?”
Type 2: A Long String of Random-Looking Characters
What it looks like:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIn0
What it means: This is almost certainly a JWT token or a base64-encoded string. JWT tokens are used for authentication. Base64 is an encoding format used to represent binary data as text. Neither is meant to be read directly by humans.
What to do: If you are seeing a JWT token, your authentication is working correctly. The token is doing its job. If you want to see what is inside a JWT for debugging, paste it into jwt.io. If this output is appearing somewhere unexpected, ask your AI: “My script is outputting what looks like a JWT token. Is this expected and where is it coming from?”
Type 3: Blank Output or Nothing at All
What it looks like: You run the script, nothing appears, and no error is shown either.
What it means: One of three things. The script ran successfully but was not designed to print any output. The script is running but its output is going somewhere you are not looking, like a file or a database. Or the script encountered an error that was silently swallowed rather than displayed.
What to do: Ask your AI: “My script runs without errors but produces no output. Can you add print statements to show what the script is doing at each step so I can verify it is working correctly?”
Type 4: A Long Number With Many Decimal Places
What it looks like:
0.9999999999999998
1.3999999999999999
What it means: Floating point precision. Computers represent decimal numbers in binary, which sometimes produces tiny rounding errors. 0.9999999999999998 is the computer’s imperfect representation of 1.0.
What to do: Ask your AI: “My script is producing numbers with many decimal places due to floating point precision. Can you round the output to two decimal places?”
Type 5: A Python Object Reference
What it looks like:
<User object at 0x7f8b1c2d3e4f>
What it means: Your script is printing a Python object rather than its contents. The object exists in memory but you are printing the reference to it rather than the values inside it.
What to do: Ask your AI: “My script is printing something that looks like [paste the output]. Can you help me print the actual values inside this object instead?”
Type 6: HTML Tags in the Output
What it looks like:
<p>Hello <strong>world</strong></p>
What it means: Your script received HTML content, probably from scraping a webpage or from an API that returns HTML formatted responses. The HTML tags are markup instructions, not content.
What to do: Ask your AI: “My script is outputting raw HTML. Can you use BeautifulSoup or a similar library to extract just the text content without the HTML tags?”
The Universal Fix for Any Strange Output
Copy the output, paste it into your AI, and ask: “My script produced this output: [paste it]. Is this correct or unexpected? If unexpected, what went wrong and how do I fix it?”
Your AI recognises all of these output types and can tell you immediately whether what you are seeing is expected behaviour or a problem worth fixing. You do not need to diagnose strange output yourself.
The One Thing to Remember
Strange script output almost always has a straightforward explanation. JSON looks like gibberish but is structured data. Long character strings are usually tokens or encodings. Blank output means the script is silent by design or has an unshown error. Copy any strange output and paste it directly to your AI with a one-sentence description of what you expected instead.
Want your scripts running and producing the right output automatically? → Snapdock
New here? These might help: What is JSON? Why your script keeps producing curly brackets. → Python errors. What your computer is actually trying to tell you. →