diff --git a/pythonProject/.idea/inspectionProfiles/profiles_settings.xml b/pythonProject/.idea/inspectionProfiles/profiles_settings.xml
new file mode 100644
index 0000000000000000000000000000000000000000..105ce2da2d6447d11dfe32bfb846c3d5b199fc99
--- /dev/null
+++ b/pythonProject/.idea/inspectionProfiles/profiles_settings.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/pythonProject/.idea/misc.xml b/pythonProject/.idea/misc.xml
new file mode 100644
index 0000000000000000000000000000000000000000..09af6940195ff191e1663dabfc5c19a9bd053a18
--- /dev/null
+++ b/pythonProject/.idea/misc.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/pythonProject/.idea/modules.xml b/pythonProject/.idea/modules.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e1ceb69dd7559259952ac2b81af35d9d1e570a9d
--- /dev/null
+++ b/pythonProject/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/pythonProject/.idea/pythonProject.iml b/pythonProject/.idea/pythonProject.iml
new file mode 100644
index 0000000000000000000000000000000000000000..f246f2cd2c66df9f5c2233531499bd2f5b5b472f
--- /dev/null
+++ b/pythonProject/.idea/pythonProject.iml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/pythonProject/.idea/vcs.xml b/pythonProject/.idea/vcs.xml
new file mode 100644
index 0000000000000000000000000000000000000000..2e3f6920d05c75d1fd79409538252175c9b9cf14
--- /dev/null
+++ b/pythonProject/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/pythonProject/.idea/workspace.xml b/pythonProject/.idea/workspace.xml
new file mode 100644
index 0000000000000000000000000000000000000000..7b5f35b38fb784785b6a3d56f70e417ce9f7a707
--- /dev/null
+++ b/pythonProject/.idea/workspace.xml
@@ -0,0 +1,102 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {
+ "associatedIndex": 5
+}
+
+
+
+
+
+ {
+ "keyToString": {
+ "Python.reddict.executor": "Run",
+ "RunOnceActivity.ShowReadmeOnStart": "true",
+ "git-widget-placeholder": "master",
+ "node.js.detected.package.eslint": "true",
+ "node.js.detected.package.tslint": "true",
+ "node.js.selected.package.eslint": "(autodetect)",
+ "node.js.selected.package.tslint": "(autodetect)",
+ "nodejs_package_manager_path": "npm",
+ "vue.rearranger.settings.migration": "true"
+ }
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1720166330465
+
+
+ 1720166330465
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/pythonProject/.venv/Scripts/activate b/pythonProject/.venv/Scripts/activate
new file mode 100644
index 0000000000000000000000000000000000000000..afa9665b78a67835c003d27f704535921f0ce185
--- /dev/null
+++ b/pythonProject/.venv/Scripts/activate
@@ -0,0 +1,87 @@
+# This file must be used with "source bin/activate" *from bash*
+# you cannot run it directly
+
+
+if [ "${BASH_SOURCE-}" = "$0" ]; then
+ echo "You must source this script: \$ source $0" >&2
+ exit 33
+fi
+
+deactivate () {
+ unset -f pydoc >/dev/null 2>&1 || true
+
+ # reset old environment variables
+ # ! [ -z ${VAR+_} ] returns true if VAR is declared at all
+ if ! [ -z "${_OLD_VIRTUAL_PATH:+_}" ] ; then
+ PATH="$_OLD_VIRTUAL_PATH"
+ export PATH
+ unset _OLD_VIRTUAL_PATH
+ fi
+ if ! [ -z "${_OLD_VIRTUAL_PYTHONHOME+_}" ] ; then
+ PYTHONHOME="$_OLD_VIRTUAL_PYTHONHOME"
+ export PYTHONHOME
+ unset _OLD_VIRTUAL_PYTHONHOME
+ fi
+
+ # The hash command must be called to get it to forget past
+ # commands. Without forgetting past commands the $PATH changes
+ # we made may not be respected
+ hash -r 2>/dev/null
+
+ if ! [ -z "${_OLD_VIRTUAL_PS1+_}" ] ; then
+ PS1="$_OLD_VIRTUAL_PS1"
+ export PS1
+ unset _OLD_VIRTUAL_PS1
+ fi
+
+ unset VIRTUAL_ENV
+ unset VIRTUAL_ENV_PROMPT
+ if [ ! "${1-}" = "nondestructive" ] ; then
+ # Self destruct!
+ unset -f deactivate
+ fi
+}
+
+# unset irrelevant variables
+deactivate nondestructive
+
+VIRTUAL_ENV='E:\python_projecy\pythonProject\.venv'
+if ([ "$OSTYPE" = "cygwin" ] || [ "$OSTYPE" = "msys" ]) && $(command -v cygpath &> /dev/null) ; then
+ VIRTUAL_ENV=$(cygpath -u "$VIRTUAL_ENV")
+fi
+export VIRTUAL_ENV
+
+_OLD_VIRTUAL_PATH="$PATH"
+PATH="$VIRTUAL_ENV/Scripts:$PATH"
+export PATH
+
+if [ "x" != x ] ; then
+ VIRTUAL_ENV_PROMPT=""
+else
+ VIRTUAL_ENV_PROMPT=$(basename "$VIRTUAL_ENV")
+fi
+export VIRTUAL_ENV_PROMPT
+
+# unset PYTHONHOME if set
+if ! [ -z "${PYTHONHOME+_}" ] ; then
+ _OLD_VIRTUAL_PYTHONHOME="$PYTHONHOME"
+ unset PYTHONHOME
+fi
+
+if [ -z "${VIRTUAL_ENV_DISABLE_PROMPT-}" ] ; then
+ _OLD_VIRTUAL_PS1="${PS1-}"
+ PS1="(${VIRTUAL_ENV_PROMPT}) ${PS1-}"
+ export PS1
+fi
+
+# Make sure to unalias pydoc if it's already there
+alias pydoc 2>/dev/null >/dev/null && unalias pydoc || true
+
+pydoc () {
+ python -m pydoc "$@"
+}
+
+# The hash command must be called to get it to forget past
+# commands. Without forgetting past commands the $PATH changes
+# we made may not be respected
+hash -r 2>/dev/null
diff --git a/pythonProject/.venv/Scripts/activate.bat b/pythonProject/.venv/Scripts/activate.bat
new file mode 100644
index 0000000000000000000000000000000000000000..c3e59d90801f2d7a998fc84b1402eb218f1ca151
--- /dev/null
+++ b/pythonProject/.venv/Scripts/activate.bat
@@ -0,0 +1,38 @@
+@set "VIRTUAL_ENV=E:\python_projecy\pythonProject\.venv"
+
+@set "VIRTUAL_ENV_PROMPT="
+@if NOT DEFINED VIRTUAL_ENV_PROMPT (
+ @for %%d in ("%VIRTUAL_ENV%") do @set "VIRTUAL_ENV_PROMPT=%%~nxd"
+)
+
+@if defined _OLD_VIRTUAL_PROMPT (
+ @set "PROMPT=%_OLD_VIRTUAL_PROMPT%"
+) else (
+ @if not defined PROMPT (
+ @set "PROMPT=$P$G"
+ )
+ @if not defined VIRTUAL_ENV_DISABLE_PROMPT (
+ @set "_OLD_VIRTUAL_PROMPT=%PROMPT%"
+ )
+)
+@if not defined VIRTUAL_ENV_DISABLE_PROMPT (
+ @set "PROMPT=(%VIRTUAL_ENV_PROMPT%) %PROMPT%"
+)
+
+@REM Don't use () to avoid problems with them in %PATH%
+@if defined _OLD_VIRTUAL_PYTHONHOME @goto ENDIFVHOME
+ @set "_OLD_VIRTUAL_PYTHONHOME=%PYTHONHOME%"
+:ENDIFVHOME
+
+@set PYTHONHOME=
+
+@REM if defined _OLD_VIRTUAL_PATH (
+@if not defined _OLD_VIRTUAL_PATH @goto ENDIFVPATH1
+ @set "PATH=%_OLD_VIRTUAL_PATH%"
+:ENDIFVPATH1
+@REM ) else (
+@if defined _OLD_VIRTUAL_PATH @goto ENDIFVPATH2
+ @set "_OLD_VIRTUAL_PATH=%PATH%"
+:ENDIFVPATH2
+
+@set "PATH=%VIRTUAL_ENV%\Scripts;%PATH%"
diff --git a/pythonProject/.venv/Scripts/activate.fish b/pythonProject/.venv/Scripts/activate.fish
new file mode 100644
index 0000000000000000000000000000000000000000..08f6ff07bec45a912f08f78634d97f11603dd1d2
--- /dev/null
+++ b/pythonProject/.venv/Scripts/activate.fish
@@ -0,0 +1,103 @@
+# This file must be used using `source bin/activate.fish` *within a running fish ( http://fishshell.com ) session*.
+# Do not run it directly.
+
+function _bashify_path -d "Converts a fish path to something bash can recognize"
+ set fishy_path $argv
+ set bashy_path $fishy_path[1]
+ for path_part in $fishy_path[2..-1]
+ set bashy_path "$bashy_path:$path_part"
+ end
+ echo $bashy_path
+end
+
+function _fishify_path -d "Converts a bash path to something fish can recognize"
+ echo $argv | tr ':' '\n'
+end
+
+function deactivate -d 'Exit virtualenv mode and return to the normal environment.'
+ # reset old environment variables
+ if test -n "$_OLD_VIRTUAL_PATH"
+ # https://github.com/fish-shell/fish-shell/issues/436 altered PATH handling
+ if test (echo $FISH_VERSION | head -c 1) -lt 3
+ set -gx PATH (_fishify_path "$_OLD_VIRTUAL_PATH")
+ else
+ set -gx PATH $_OLD_VIRTUAL_PATH
+ end
+ set -e _OLD_VIRTUAL_PATH
+ end
+
+ if test -n "$_OLD_VIRTUAL_PYTHONHOME"
+ set -gx PYTHONHOME "$_OLD_VIRTUAL_PYTHONHOME"
+ set -e _OLD_VIRTUAL_PYTHONHOME
+ end
+
+ if test -n "$_OLD_FISH_PROMPT_OVERRIDE"
+ and functions -q _old_fish_prompt
+ # Set an empty local `$fish_function_path` to allow the removal of `fish_prompt` using `functions -e`.
+ set -l fish_function_path
+
+ # Erase virtualenv's `fish_prompt` and restore the original.
+ functions -e fish_prompt
+ functions -c _old_fish_prompt fish_prompt
+ functions -e _old_fish_prompt
+ set -e _OLD_FISH_PROMPT_OVERRIDE
+ end
+
+ set -e VIRTUAL_ENV
+ set -e VIRTUAL_ENV_PROMPT
+
+ if test "$argv[1]" != 'nondestructive'
+ # Self-destruct!
+ functions -e pydoc
+ functions -e deactivate
+ functions -e _bashify_path
+ functions -e _fishify_path
+ end
+end
+
+# Unset irrelevant variables.
+deactivate nondestructive
+
+set -gx VIRTUAL_ENV 'E:\python_projecy\pythonProject\.venv'
+
+# https://github.com/fish-shell/fish-shell/issues/436 altered PATH handling
+if test (echo $FISH_VERSION | head -c 1) -lt 3
+ set -gx _OLD_VIRTUAL_PATH (_bashify_path $PATH)
+else
+ set -gx _OLD_VIRTUAL_PATH $PATH
+end
+set -gx PATH "$VIRTUAL_ENV"'/Scripts' $PATH
+
+# Prompt override provided?
+# If not, just use the environment name.
+if test -n ''
+ set -gx VIRTUAL_ENV_PROMPT ''
+else
+ set -gx VIRTUAL_ENV_PROMPT (basename "$VIRTUAL_ENV")
+end
+
+# Unset `$PYTHONHOME` if set.
+if set -q PYTHONHOME
+ set -gx _OLD_VIRTUAL_PYTHONHOME $PYTHONHOME
+ set -e PYTHONHOME
+end
+
+function pydoc
+ python -m pydoc $argv
+end
+
+if test -z "$VIRTUAL_ENV_DISABLE_PROMPT"
+ # Copy the current `fish_prompt` function as `_old_fish_prompt`.
+ functions -c fish_prompt _old_fish_prompt
+
+ function fish_prompt
+ # Run the user's prompt first; it might depend on (pipe)status.
+ set -l prompt (_old_fish_prompt)
+
+ printf '(%s) ' $VIRTUAL_ENV_PROMPT
+
+ string join -- \n $prompt # handle multi-line prompts
+ end
+
+ set -gx _OLD_FISH_PROMPT_OVERRIDE "$VIRTUAL_ENV"
+end
diff --git a/pythonProject/.venv/Scripts/activate.nu b/pythonProject/.venv/Scripts/activate.nu
new file mode 100644
index 0000000000000000000000000000000000000000..6d92064be5a2b03545bef29a6fc950a5e7fd1056
--- /dev/null
+++ b/pythonProject/.venv/Scripts/activate.nu
@@ -0,0 +1,96 @@
+# virtualenv activation module
+# Activate with `overlay use activate.nu`
+# Deactivate with `deactivate`, as usual
+#
+# To customize the overlay name, you can call `overlay use activate.nu as foo`,
+# but then simply `deactivate` won't work because it is just an alias to hide
+# the "activate" overlay. You'd need to call `overlay hide foo` manually.
+
+export-env {
+ def is-string [x] {
+ ($x | describe) == 'string'
+ }
+
+ def has-env [...names] {
+ $names | each {|n|
+ $n in $env
+ } | all {|i| $i == true}
+ }
+
+ # Emulates a `test -z`, but btter as it handles e.g 'false'
+ def is-env-true [name: string] {
+ if (has-env $name) {
+ # Try to parse 'true', '0', '1', and fail if not convertible
+ let parsed = (do -i { $env | get $name | into bool })
+ if ($parsed | describe) == 'bool' {
+ $parsed
+ } else {
+ not ($env | get -i $name | is-empty)
+ }
+ } else {
+ false
+ }
+ }
+
+ let virtual_env = 'E:\python_projecy\pythonProject\.venv'
+ let bin = 'Scripts'
+
+ let is_windows = ($nu.os-info.family) == 'windows'
+ let path_name = (if (has-env 'Path') {
+ 'Path'
+ } else {
+ 'PATH'
+ }
+ )
+
+ let venv_path = ([$virtual_env $bin] | path join)
+ let new_path = ($env | get $path_name | prepend $venv_path)
+
+ # If there is no default prompt, then use the env name instead
+ let virtual_env_prompt = (if ('' | is-empty) {
+ ($virtual_env | path basename)
+ } else {
+ ''
+ })
+
+ let new_env = {
+ $path_name : $new_path
+ VIRTUAL_ENV : $virtual_env
+ VIRTUAL_ENV_PROMPT : $virtual_env_prompt
+ }
+
+ let new_env = (if (is-env-true 'VIRTUAL_ENV_DISABLE_PROMPT') {
+ $new_env
+ } else {
+ # Creating the new prompt for the session
+ let virtual_prefix = $'(char lparen)($virtual_env_prompt)(char rparen) '
+
+ # Back up the old prompt builder
+ let old_prompt_command = (if (has-env 'PROMPT_COMMAND') {
+ $env.PROMPT_COMMAND
+ } else {
+ ''
+ })
+
+ let new_prompt = (if (has-env 'PROMPT_COMMAND') {
+ if 'closure' in ($old_prompt_command | describe) {
+ {|| $'($virtual_prefix)(do $old_prompt_command)' }
+ } else {
+ {|| $'($virtual_prefix)($old_prompt_command)' }
+ }
+ } else {
+ {|| $'($virtual_prefix)' }
+ })
+
+ $new_env | merge {
+ PROMPT_COMMAND : $new_prompt
+ VIRTUAL_PREFIX : $virtual_prefix
+ }
+ })
+
+ # Environment variables that will be loaded as the virtual env
+ load-env $new_env
+}
+
+export alias pydoc = python -m pydoc
+export alias deactivate = overlay hide activate
diff --git a/pythonProject/.venv/Scripts/activate.ps1 b/pythonProject/.venv/Scripts/activate.ps1
new file mode 100644
index 0000000000000000000000000000000000000000..bf4b0b7c1f746721fcdb55bb756788b46a7b4001
--- /dev/null
+++ b/pythonProject/.venv/Scripts/activate.ps1
@@ -0,0 +1,61 @@
+$script:THIS_PATH = $myinvocation.mycommand.path
+$script:BASE_DIR = Split-Path (Resolve-Path "$THIS_PATH/..") -Parent
+
+function global:deactivate([switch] $NonDestructive) {
+ if (Test-Path variable:_OLD_VIRTUAL_PATH) {
+ $env:PATH = $variable:_OLD_VIRTUAL_PATH
+ Remove-Variable "_OLD_VIRTUAL_PATH" -Scope global
+ }
+
+ if (Test-Path function:_old_virtual_prompt) {
+ $function:prompt = $function:_old_virtual_prompt
+ Remove-Item function:\_old_virtual_prompt
+ }
+
+ if ($env:VIRTUAL_ENV) {
+ Remove-Item env:VIRTUAL_ENV -ErrorAction SilentlyContinue
+ }
+
+ if ($env:VIRTUAL_ENV_PROMPT) {
+ Remove-Item env:VIRTUAL_ENV_PROMPT -ErrorAction SilentlyContinue
+ }
+
+ if (!$NonDestructive) {
+ # Self destruct!
+ Remove-Item function:deactivate
+ Remove-Item function:pydoc
+ }
+}
+
+function global:pydoc {
+ python -m pydoc $args
+}
+
+# unset irrelevant variables
+deactivate -nondestructive
+
+$VIRTUAL_ENV = $BASE_DIR
+$env:VIRTUAL_ENV = $VIRTUAL_ENV
+
+if ("" -ne "") {
+ $env:VIRTUAL_ENV_PROMPT = ""
+}
+else {
+ $env:VIRTUAL_ENV_PROMPT = $( Split-Path $env:VIRTUAL_ENV -Leaf )
+}
+
+New-Variable -Scope global -Name _OLD_VIRTUAL_PATH -Value $env:PATH
+
+$env:PATH = "$env:VIRTUAL_ENV/Scripts;" + $env:PATH
+if (!$env:VIRTUAL_ENV_DISABLE_PROMPT) {
+ function global:_old_virtual_prompt {
+ ""
+ }
+ $function:_old_virtual_prompt = $function:prompt
+
+ function global:prompt {
+ # Add the custom prefix to the existing prompt
+ $previous_prompt_value = & $function:_old_virtual_prompt
+ ("(" + $env:VIRTUAL_ENV_PROMPT + ") " + $previous_prompt_value)
+ }
+}
diff --git a/pythonProject/.venv/Scripts/activate_this.py b/pythonProject/.venv/Scripts/activate_this.py
new file mode 100644
index 0000000000000000000000000000000000000000..cdef4d72071a4b99a1300e1444905784433179d6
--- /dev/null
+++ b/pythonProject/.venv/Scripts/activate_this.py
@@ -0,0 +1,36 @@
+"""
+Activate virtualenv for current interpreter:
+
+Use exec(open(this_file).read(), {'__file__': this_file}).
+
+This can be used when you must use an existing Python interpreter, not the virtualenv bin/python.
+""" # noqa: D415
+from __future__ import annotations
+
+import os
+import site
+import sys
+
+try:
+ abs_file = os.path.abspath(__file__)
+except NameError as exc:
+ msg = "You must use exec(open(this_file).read(), {'__file__': this_file}))"
+ raise AssertionError(msg) from exc
+
+bin_dir = os.path.dirname(abs_file)
+base = bin_dir[: -len("Scripts") - 1] # strip away the bin part from the __file__, plus the path separator
+
+# prepend bin to PATH (this file is inside the bin directory)
+os.environ["PATH"] = os.pathsep.join([bin_dir, *os.environ.get("PATH", "").split(os.pathsep)])
+os.environ["VIRTUAL_ENV"] = base # virtual env is right above bin directory
+os.environ["VIRTUAL_ENV_PROMPT"] = "" or os.path.basename(base) # noqa: SIM222
+
+# add the virtual environments libraries to the host python import mechanism
+prev_length = len(sys.path)
+for lib in "..\\Lib\\site-packages".split(os.pathsep):
+ path = os.path.realpath(os.path.join(bin_dir, lib))
+ site.addsitedir(path.decode("utf-8") if "" else path)
+sys.path[:] = sys.path[prev_length:] + sys.path[0:prev_length]
+
+sys.real_prefix = sys.prefix
+sys.prefix = base
diff --git a/pythonProject/.venv/Scripts/deactivate.bat b/pythonProject/.venv/Scripts/deactivate.bat
new file mode 100644
index 0000000000000000000000000000000000000000..24a03a3f2fc5d15050f9897b9fe53e2c1319af69
--- /dev/null
+++ b/pythonProject/.venv/Scripts/deactivate.bat
@@ -0,0 +1,18 @@
+@set VIRTUAL_ENV=
+@set VIRTUAL_ENV_PROMPT=
+
+@REM Don't use () to avoid problems with them in %PATH%
+@if not defined _OLD_VIRTUAL_PROMPT @goto ENDIFVPROMPT
+ @set "PROMPT=%_OLD_VIRTUAL_PROMPT%"
+ @set _OLD_VIRTUAL_PROMPT=
+:ENDIFVPROMPT
+
+@if not defined _OLD_VIRTUAL_PYTHONHOME @goto ENDIFVHOME
+ @set "PYTHONHOME=%_OLD_VIRTUAL_PYTHONHOME%"
+ @set _OLD_VIRTUAL_PYTHONHOME=
+:ENDIFVHOME
+
+@if not defined _OLD_VIRTUAL_PATH @goto ENDIFVPATH
+ @set "PATH=%_OLD_VIRTUAL_PATH%"
+ @set _OLD_VIRTUAL_PATH=
+:ENDIFVPATH
diff --git a/pythonProject/.venv/Scripts/f2py.exe b/pythonProject/.venv/Scripts/f2py.exe
new file mode 100644
index 0000000000000000000000000000000000000000..681f49542f6b5f0154a3859b92f09ea10f2fd470
Binary files /dev/null and b/pythonProject/.venv/Scripts/f2py.exe differ
diff --git a/pythonProject/.venv/Scripts/numpy-config.exe b/pythonProject/.venv/Scripts/numpy-config.exe
new file mode 100644
index 0000000000000000000000000000000000000000..802978ea786fc3f4bf5a9fd11ca8f2989af2a5d5
Binary files /dev/null and b/pythonProject/.venv/Scripts/numpy-config.exe differ
diff --git a/pythonProject/.venv/Scripts/pip-3.12.exe b/pythonProject/.venv/Scripts/pip-3.12.exe
new file mode 100644
index 0000000000000000000000000000000000000000..2247d0fecaff0b90061698aadc38bb44eda21c1c
Binary files /dev/null and b/pythonProject/.venv/Scripts/pip-3.12.exe differ
diff --git a/pythonProject/.venv/pyvenv.cfg b/pythonProject/.venv/pyvenv.cfg
new file mode 100644
index 0000000000000000000000000000000000000000..9e86be89d3bc20a0117efc8312c98a350022d14b
--- /dev/null
+++ b/pythonProject/.venv/pyvenv.cfg
@@ -0,0 +1,8 @@
+home = C:\Users\13663\AppData\Local\Programs\Python\Python312-32
+implementation = CPython
+version_info = 3.12.0.final.0
+virtualenv = 20.24.5
+include-system-site-packages = false
+base-prefix = C:\Users\13663\AppData\Local\Programs\Python\Python312-32
+base-exec-prefix = C:\Users\13663\AppData\Local\Programs\Python\Python312-32
+base-executable = C:\Users\13663\AppData\Local\Programs\Python\Python312-32\python.exe
diff --git a/pythonProject/__pycache__/datas.cpython-312.pyc b/pythonProject/__pycache__/datas.cpython-312.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..bf3e684343b76adf9cc0b44d12d0ba8cb2aced65
Binary files /dev/null and b/pythonProject/__pycache__/datas.cpython-312.pyc differ
diff --git a/pythonProject/datas.py b/pythonProject/datas.py
new file mode 100644
index 0000000000000000000000000000000000000000..16894e6c518b403c815252b8800166d65bd77146
--- /dev/null
+++ b/pythonProject/datas.py
@@ -0,0 +1,64 @@
+
+
+datas=[
+ {
+ "city":"吕梁",
+ "area":100,
+ "rooms":2,
+ "school":1,
+ "style":1,
+ "price":8000,
+ },
+{
+ "city":"吕梁",
+ "area":130,
+ "rooms":2,
+ "school":1,
+ "style":1,
+ "price":7800,
+ },
+{
+ "city":"吕梁",
+ "area":150,
+ "rooms":2,
+ "school":1,
+ "style":1,
+ "price":8200,
+ },
+
+
+{
+ "city":"太原",
+ "area":100,
+ "rooms":2,
+ "school":1,
+ "style":1,
+ "price":10000,
+ },
+{
+ "city":"太原",
+ "area":130,
+ "rooms":2,
+ "school":1,
+ "style":1,
+ "price":9800,
+ },
+{
+ "city":"太原",
+ "area":150,
+ "rooms":2,
+ "school":1,
+ "style":1,
+ "price":8500,
+ },
+]
+
+# 各 3000 10 1000 1300 1500
+# 城市 面积 房间数量 学区房 装修 各个元素的权重 a1 a2 a3 a4 a5
+# 总价即总分 : p
+# 各个元素*各个元素的权重之和即为分数
+# 城市: x1 例: 县=1 市=2
+# 面积: x2 按平方米计量
+# 房间数量: x3 个数
+# 学区房 : bool 0/1
+# 装修: bool 0/1 是否精装修
\ No newline at end of file
diff --git a/pythonProject/reddict.py b/pythonProject/reddict.py
new file mode 100644
index 0000000000000000000000000000000000000000..df3407841f74a01b88f53ee47d7becf42037d84a
--- /dev/null
+++ b/pythonProject/reddict.py
@@ -0,0 +1,48 @@
+
+import numpy as np
+from datas import datas
+x=[]
+y=[]
+cityMark={"吕梁":1,"太原":2}
+for item in datas:
+ single=[]
+
+ single.append(cityMark[item["city"]])
+
+ single.append(item["area"])
+
+ single.append(item["rooms"])
+
+ single.append(item["school"])
+
+ single.append(item["style"])
+
+
+
+x.append(single)
+y.append(item["price"])
+
+x=np.array(x)
+y=np.array(y)
+print(x)
+print(y)
+
+
+theta=np.linalg.pinv(x.T.dot(x)).dot(x.T).dot(y)
+
+print(theta.dot(np.array([2,100,2,1,1])))
+
+
+#a=np.array([[1,2,3],[1,2,3]])
+#b=np.array([1,2,3])
+#print(a.dot(b)) #点乘
+
+
+#print(a)
+#print(a.T) #转置矩阵
+
+
+#print(np.linalg.pinv(a)) #矩阵求逆
+
+
+