{"library":"packageurl-python","code":"from packageurl import PackageURL\n\n# Create a PackageURL from a string\npurl_string = \"pkg:maven/org.apache.commons/io@1.3.4?checksum=25b8109d\"\npurl = PackageURL.from_string(purl_string)\n\n# Access components\nprint(f\"Type: {purl.type}\")\nprint(f\"Namespace: {purl.namespace}\")\nprint(f\"Name: {purl.name}\")\nprint(f\"Version: {purl.version}\")\nprint(f\"Qualifiers: {purl.qualifiers}\")\nprint(f\"Subpath: {purl.subpath}\")\n\n# Convert to dictionary or string\nprint(f\"As dict: {purl.to_dict()}\")\nprint(f\"As string: {purl.to_string()}\")\n\n# Build a PackageURL from components\nnew_purl = PackageURL(type='npm', name='react', version='18.2.0', qualifiers={'foo': 'bar'})\nprint(f\"New PURL: {new_purl.to_string()}\")","lang":"python","description":"Demonstrates how to parse a Package URL string into a PackageURL object, access its individual components, and then convert it back to a dictionary or string. It also shows how to construct a PackageURL object from its constituent parts.","tag":null,"tag_description":null,"last_tested":"2026-04-24","results":[{"runtime":"python:3.10-alpine","exit_code":0},{"runtime":"python:3.10-slim","exit_code":0},{"runtime":"python:3.11-alpine","exit_code":0},{"runtime":"python:3.11-slim","exit_code":0},{"runtime":"python:3.12-alpine","exit_code":0},{"runtime":"python:3.12-slim","exit_code":0},{"runtime":"python:3.13-alpine","exit_code":0},{"runtime":"python:3.13-slim","exit_code":0},{"runtime":"python:3.9-alpine","exit_code":0},{"runtime":"python:3.9-slim","exit_code":0}]}