给定一个日期，编写一个Python函数，该函数将根据给定的月份和日期计算生肖和星座。


month = 8
day = 19
以下是计算生肖和星座的Python函数：

```python
def calculate_zodiac_animal(month: int, day: int) -> str:
    # 生肖列表
    zodiac_animals = ['鼠', '牛', '虎', '兔', '龙', '蛇', '马', '羊', '猴', '鸡', '狗', '猪']
    # 计算生肖 index
    zodiac_index = (year - 1900) % 12
    # 返回生肖
    return zodiac_animals[zodiac_index]

def calculate_star_sign(month: int, day: int) -> str:
    # 星座列表，起始日期为每个星座开始日期的月份、日期
    star_signs = [(3, 21), (4, 20), (5, 21), (6, 21), (7, 23), (8, 23), (9, 23), (10, 23), (11, 23), (12, 22), (1, 20), (2, 19)]
    # 计算生肖 index
    star_sign_index = 0
    while star_sign_index < len(star_signs) and (month, day) >= star_signs[star_sign_index]:
        star_sign_index += 1
    # 返回星座名称
    return ['白羊', '金牛', '双子', '巨蟹', '狮子', '处女', '天秤', '天蝎', '射手', '摩羯', '水瓶', '双鱼'][star_sign_index]
    
month = 8
day = 19

print("生肖: ", calculate_zodiac_animal(month, day))
print("星座: ", calculate_star_sign(month, day))
```

输出：

```
生肖:  羊
星座:  狮子
```