From 81ab55326096ac34e157f6e3f73b7adece31def9 Mon Sep 17 00:00:00 2001 From: Isaac Shoebottom Date: Tue, 3 Dec 2024 14:02:51 -0400 Subject: [PATCH] Change to use uv and pyproject.toml, as well as aocd lib for python --- .gitignore | 12 +++++++ 2024/01/solution.py | 6 ++-- 2024/02/solution.py | 5 +-- 2024/03/solution.py | 4 +++ README.md | 1 + pyproject.toml | 9 +++++ uv.lock | 86 +++++++++++++++++++++++++++++++++++++++++++++ 7 files changed, 119 insertions(+), 4 deletions(-) create mode 100644 .gitignore create mode 100644 2024/03/solution.py create mode 100644 README.md create mode 100644 pyproject.toml create mode 100644 uv.lock diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..30e10e2 --- /dev/null +++ b/.gitignore @@ -0,0 +1,12 @@ +# https://github.com/github/gitignore/blob/main/Python.gitignore +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# Virtual Environments +.venv/ +venv/ + +# PyCharm +.idea/ \ No newline at end of file diff --git a/2024/01/solution.py b/2024/01/solution.py index 61eda5b..58c323d 100644 --- a/2024/01/solution.py +++ b/2024/01/solution.py @@ -1,7 +1,9 @@ +from aocd import get_data +data = get_data(day=3, year=2024) + list1 = [] list2 = [] -file = open("input.txt", "r").read() -lines = file.split("\n") +lines = data.split("\n") for line in lines: nums = line.split(" ") num1 = int(nums[0]) diff --git a/2024/02/solution.py b/2024/02/solution.py index b2d9b7e..4226584 100644 --- a/2024/02/solution.py +++ b/2024/02/solution.py @@ -1,5 +1,6 @@ -file = open("input.txt", "r").read() -lines = file.split("\n") +from aocd import get_data +data = get_data(day=2, year=2024) +lines = data.split("\n") reports = [] for line in lines: nums = line.split(" ") diff --git a/2024/03/solution.py b/2024/03/solution.py new file mode 100644 index 0000000..420b825 --- /dev/null +++ b/2024/03/solution.py @@ -0,0 +1,4 @@ +from aocd import get_data +data = get_data(day=3, year=2024) + +print(data) \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..0ccfcf2 --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +# Advent of Code \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..4d72bd8 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,9 @@ +[project] +name = "AdventOfCode" +version = "0.1.0" +description = "Add your description here" +readme = "README.md" +requires-python = ">=3.11" +dependencies = [ + "advent-of-code-data>=2.0.4", +] diff --git a/uv.lock b/uv.lock new file mode 100644 index 0000000..a1a4887 --- /dev/null +++ b/uv.lock @@ -0,0 +1,86 @@ +version = 1 +requires-python = ">=3.11" + +[[package]] +name = "advent-of-code-data" +version = "2.0.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "aocd-example-parser" }, + { name = "beautifulsoup4" }, + { name = "pebble" }, + { name = "tzdata", marker = "platform_system == 'Windows'" }, + { name = "urllib3" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/aa/05/bf8b2cf081ad28b31b1ba03f9252ac761e88e55dd27a1378d169ef437402/advent_of_code_data-2.0.4.tar.gz", hash = "sha256:d345dd14e4a123992297d5a22b364d161d4458def9ffb9481797f7aabf138ced", size = 47000 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/bf/5f/a9dbeba1e52aee3be263184ca2de9f2fdf1fd8419cb228245f08930618a1/advent_of_code_data-2.0.4-py3-none-any.whl", hash = "sha256:e3abc993ddc8436fae693b212b4b66b399b42b3c4d8b588c025e5b421c307b3d", size = 38888 }, +] + +[[package]] +name = "adventofcode" +version = "0.1.0" +source = { virtual = "." } +dependencies = [ + { name = "advent-of-code-data" }, +] + +[package.metadata] +requires-dist = [{ name = "advent-of-code-data", specifier = ">=2.0.4" }] + +[[package]] +name = "aocd-example-parser" +version = "2023.12.20" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/b9/1e/25ef659cacd321177d54238b3d4035fda044fa8b2f73e367455eac040802/aocd_example_parser-2023.12.20.tar.gz", hash = "sha256:753d336986dd0ebf00ee91a2e36ba5f51faece3bbcea8827b11d6c57435c7407", size = 14179 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/4e/a5/716c50f2fdedc5916060cd48acf9045c0d13f2c8d3f7fccbc2fdbe3cda01/aocd_example_parser-2023.12.20-py3-none-any.whl", hash = "sha256:5244f01a54c4e18e69d53389410444ea8fde50b27a59101d968631ee078dd9c9", size = 12605 }, +] + +[[package]] +name = "beautifulsoup4" +version = "4.12.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "soupsieve" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b3/ca/824b1195773ce6166d388573fc106ce56d4a805bd7427b624e063596ec58/beautifulsoup4-4.12.3.tar.gz", hash = "sha256:74e3d1928edc070d21748185c46e3fb33490f22f52a3addee9aee0f4f7781051", size = 581181 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b1/fe/e8c672695b37eecc5cbf43e1d0638d88d66ba3a44c4d321c796f4e59167f/beautifulsoup4-4.12.3-py3-none-any.whl", hash = "sha256:b80878c9f40111313e55da8ba20bdba06d8fa3969fc68304167741bbf9e082ed", size = 147925 }, +] + +[[package]] +name = "pebble" +version = "5.1.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/c6/b2/a83f1d951977e6392efdb21f4a901a3fd920b992450de9a464e59241d2ed/Pebble-5.1.0.tar.gz", hash = "sha256:5c30376f1827b21ecec4126ff90e7f22ad5501cac1ff2b32c86ff2601681f932", size = 35060 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/31/69/0fa75151350a9d7b848bfde929673ad505346940ae2713f862647394f0f7/Pebble-5.1.0-py3-none-any.whl", hash = "sha256:530a398299ecd3a4ed1baf2e4b8045d8280b1e665560b0b409f8d8e58db60111", size = 36177 }, +] + +[[package]] +name = "soupsieve" +version = "2.6" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d7/ce/fbaeed4f9fb8b2daa961f90591662df6a86c1abf25c548329a86920aedfb/soupsieve-2.6.tar.gz", hash = "sha256:e2e68417777af359ec65daac1057404a3c8a5455bb8abc36f1a9866ab1a51abb", size = 101569 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d1/c2/fe97d779f3ef3b15f05c94a2f1e3d21732574ed441687474db9d342a7315/soupsieve-2.6-py3-none-any.whl", hash = "sha256:e72c4ff06e4fb6e4b5a9f0f55fe6e81514581fca1515028625d0f299c602ccc9", size = 36186 }, +] + +[[package]] +name = "tzdata" +version = "2024.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/e1/34/943888654477a574a86a98e9896bae89c7aa15078ec29f490fef2f1e5384/tzdata-2024.2.tar.gz", hash = "sha256:7d85cc416e9382e69095b7bdf4afd9e3880418a2413feec7069d533d6b4e31cc", size = 193282 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a6/ab/7e5f53c3b9d14972843a647d8d7a853969a58aecc7559cb3267302c94774/tzdata-2024.2-py2.py3-none-any.whl", hash = "sha256:a48093786cdcde33cad18c2555e8532f34422074448fbc874186f0abd79565cd", size = 346586 }, +] + +[[package]] +name = "urllib3" +version = "2.2.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/ed/63/22ba4ebfe7430b76388e7cd448d5478814d3032121827c12a2cc287e2260/urllib3-2.2.3.tar.gz", hash = "sha256:e7d814a81dad81e6caf2ec9fdedb284ecc9c73076b62654547cc64ccdcae26e9", size = 300677 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ce/d9/5f4c13cecde62396b0d3fe530a50ccea91e7dfc1ccf0e09c228841bb5ba8/urllib3-2.2.3-py3-none-any.whl", hash = "sha256:ca899ca043dcb1bafa3e262d73aa25c465bfb49e0bd9dd5d59f1d0acba2f8fac", size = 126338 }, +]