Added more test files from lectures.

This commit is contained in:
cheezedoodle2
2023-04-06 17:03:21 -07:00
parent c610762522
commit 0dd1348601
13 changed files with 311 additions and 7 deletions
+49
View File
@@ -0,0 +1,49 @@
class BoundedInt():
def __init__(self, i, min, max):
self.i = i
self.min = min
self.max = max
def __index__(self):
return self.i
def __add__(self, other):
if isinstance(other, BoundedInt):
result = self.i + other.i
elif isinstance(other, str):
score = sentiment(other)
result = self.i + score
else:
result = self.i + other
if result > self.max:
raise ValueError("Result exceeds max value")
return BoundedInt(result, self.min, self.max)
def __sub__(self, other):
if isinstance(other, BoundedInt):
result = self.i - other.i
elif isinstance(other, str):
score = sentiment(other)
result = self.i - score
else:
result = self.i - other
if result < self.min:
raise ValueError("Result exceeds min value")
return BoundedInt(result, self.min, self.max)
def sentiment(emoji):
sentiment_scores = {
"😀": 8.9,
"😢": -6.2,
"😡": -9.5,
"😍": 9.8,
}
return sentiment_scores.get(emoji, 0.0)
if __name__ == '__main__':
b = BoundedInt(3, min = 0, max = 8)
b -= "😢"
#a = [1,2,3,4,5,6,7,8,9,10]
#print(f"{a[b]=}")