DawnC commited on
Commit
a0ff9ea
1 Parent(s): 06c43f8

Update scoring_calculation_system.py

Browse files
Files changed (1) hide show
  1. scoring_calculation_system.py +18 -21
scoring_calculation_system.py CHANGED
@@ -1305,11 +1305,9 @@ def calculate_compatibility_score(breed_info: dict, user_prefs: UserPreferences)
1305
  user_prefs.space_for_play,
1306
  breed_info.get('Exercise Needs', 'Moderate')
1307
  )
1308
- print(f"\n空間分數計算結果: {space_score}")
1309
- print(f"使用參數 - Size: {breed_info['Size']}, Living Space: {user_prefs.living_space}")
1310
  except Exception as e:
1311
  print(f"空間分數計算錯誤: {str(e)}")
1312
- print(f"錯誤詳情: {traceback.format_exc()}")
1313
  raise
1314
 
1315
  try:
@@ -1317,11 +1315,9 @@ def calculate_compatibility_score(breed_info: dict, user_prefs: UserPreferences)
1317
  breed_info.get('Exercise Needs', 'Moderate'),
1318
  user_prefs.exercise_time
1319
  )
1320
- print(f"\n運動分數計算結果: {exercise_score}")
1321
- print(f"使用參數 - Exercise Needs: {breed_info.get('Exercise Needs', 'Moderate')}, Time: {user_prefs.exercise_time}")
1322
  except Exception as e:
1323
  print(f"運動分數計算錯誤: {str(e)}")
1324
- print(f"錯誤詳情: {traceback.format_exc()}")
1325
  raise
1326
 
1327
  try:
@@ -1330,11 +1326,9 @@ def calculate_compatibility_score(breed_info: dict, user_prefs: UserPreferences)
1330
  user_prefs.grooming_commitment.lower(),
1331
  breed_info['Size']
1332
  )
1333
- print(f"\n美容分數計算結果: {grooming_score}")
1334
- print(f"使用參數 - Grooming Needs: {breed_info.get('Grooming Needs', 'Moderate')}, Commitment: {user_prefs.grooming_commitment}")
1335
  except Exception as e:
1336
  print(f"美容分數計算錯誤: {str(e)}")
1337
- print(f"錯誤詳情: {traceback.format_exc()}")
1338
  raise
1339
 
1340
  try:
@@ -1343,32 +1337,30 @@ def calculate_compatibility_score(breed_info: dict, user_prefs: UserPreferences)
1343
  user_prefs.experience_level,
1344
  breed_info.get('Temperament', '')
1345
  )
1346
- print(f"\n經驗分數計算結果: {experience_score}")
1347
- print(f"使用參數 - Care Level: {breed_info.get('Care Level', 'Moderate')}, Experience: {user_prefs.experience_level}")
1348
  except Exception as e:
1349
  print(f"經驗分數計算錯誤: {str(e)}")
1350
- print(f"錯誤詳情: {traceback.format_exc()}")
1351
  raise
1352
 
1353
  try:
1354
- health_score = calculate_health_score(breed_info.get('Breed', ''))
1355
- print(f"\n健康分數計算結果: {health_score}")
1356
- print(f"使用參數 - Breed: {breed_info.get('Breed', '')}")
1357
  except Exception as e:
1358
  print(f"健康分數計算錯誤: {str(e)}")
1359
- print(f"錯誤詳情: {traceback.format_exc()}")
1360
  raise
1361
 
1362
  try:
1363
- noise_score = calculate_noise_score(breed_info.get('Breed', ''), user_prefs.noise_tolerance)
1364
- print(f"\n噪音分數計算結果: {noise_score}")
1365
- print(f"使用參數 - Breed: {breed_info.get('Breed', '')}, Noise Tolerance: {user_prefs.noise_tolerance}")
 
 
1366
  except Exception as e:
1367
  print(f"噪音分數計算錯誤: {str(e)}")
1368
- print(f"錯誤詳情: {traceback.format_exc()}")
1369
  raise
1370
 
1371
- # 整合所有分數
1372
  scores = {
1373
  'space': space_score,
1374
  'exercise': exercise_score,
@@ -1378,6 +1370,11 @@ def calculate_compatibility_score(breed_info: dict, user_prefs: UserPreferences)
1378
  'noise': noise_score
1379
  }
1380
 
 
 
 
 
 
1381
  # 首先處理極端情況
1382
  def check_critical_issues(scores: dict, breed_info: dict) -> float:
1383
  """
 
1305
  user_prefs.space_for_play,
1306
  breed_info.get('Exercise Needs', 'Moderate')
1307
  )
1308
+ print(f"空間分數計算結果: {space_score}")
 
1309
  except Exception as e:
1310
  print(f"空間分數計算錯誤: {str(e)}")
 
1311
  raise
1312
 
1313
  try:
 
1315
  breed_info.get('Exercise Needs', 'Moderate'),
1316
  user_prefs.exercise_time
1317
  )
1318
+ print(f"運動分數計算結果: {exercise_score}")
 
1319
  except Exception as e:
1320
  print(f"運動分數計算錯誤: {str(e)}")
 
1321
  raise
1322
 
1323
  try:
 
1326
  user_prefs.grooming_commitment.lower(),
1327
  breed_info['Size']
1328
  )
1329
+ print(f"美容分數計算結果: {grooming_score}")
 
1330
  except Exception as e:
1331
  print(f"美容分數計算錯誤: {str(e)}")
 
1332
  raise
1333
 
1334
  try:
 
1337
  user_prefs.experience_level,
1338
  breed_info.get('Temperament', '')
1339
  )
1340
+ print(f"經驗分數計算結果: {experience_score}")
 
1341
  except Exception as e:
1342
  print(f"經驗分數計算錯誤: {str(e)}")
 
1343
  raise
1344
 
1345
  try:
1346
+ # 修正:加入 user_prefs 參數
1347
+ health_score = calculate_health_score(breed_info.get('Breed', ''), user_prefs)
1348
+ print(f"健康分數計算結果: {health_score}")
1349
  except Exception as e:
1350
  print(f"健康分數計算錯誤: {str(e)}")
 
1351
  raise
1352
 
1353
  try:
1354
+ noise_score = calculate_noise_score(
1355
+ breed_info.get('Breed', ''),
1356
+ user_prefs.noise_tolerance
1357
+ )
1358
+ print(f"噪音分數計算結果: {noise_score}")
1359
  except Exception as e:
1360
  print(f"噪音分數計算錯誤: {str(e)}")
 
1361
  raise
1362
 
1363
+ # 整合所有分數到字典中
1364
  scores = {
1365
  'space': space_score,
1366
  'exercise': exercise_score,
 
1370
  'noise': noise_score
1371
  }
1372
 
1373
+ print("\n=== 所有基礎分數 ===")
1374
+ for category, score in scores.items():
1375
+ print(f"{category}: {score}")
1376
+
1377
+
1378
  # 首先處理極端情況
1379
  def check_critical_issues(scores: dict, breed_info: dict) -> float:
1380
  """