## 首先，安装Python环境，推荐Anaconda： https://www.anaconda.com/download

## 之后，打开windows或macos的命令行，输入python，进入python终端

## 然后，完成以下作业，将输出结果或分析想法贴在每一题的下面（注释形式）

## 最后，保存为.py文件，作为附件发我邮箱：zongchang@zust.edu.cn，邮件标题为：python作业1-【你的姓名】-【你的学号】

###########################################
## 编写一段代码满足以下规格
def div_by(n, d):
    """ 
    n 和 d 为整数且 > 0
    返回 True 如果 d 可以整除 n ，否则返回False 
    """
    # 你的代码：

#测试你的代码：
#n = 10 and d = 3
#n = 195 and d = 13

###########################################
## 编写一段代码满足以下规格要求
def is_palindrome(s):
    """ s 是一个字符串
    Returns True 如果 s 是回文字符串，否则返回 False
    """
    # 你的代码：

# 举例：
# 如果s="222"，返回True
# 如果s="wasitacaroracatisaw"，返回True
# 如果s="abc"，返回False

###########################################
## 尝试修改以下代码让它按照说明文档执行
def is_triangular(n):
    """ n is an int > 0
    Returns True if n is triangular, i.e. equals a continued
    summation of natural numbers (1+2+3+...+k), False otherwise    
    """
    total = 0
    for i in range(n):
        total += i
        if total == n:
            print(True)
    print(False)


###########################################
## 尝试写一个函数满足以下要求：
def char_counts(s):
    """ s 是一个由英文字母组成的string
    返回一个 tuple ，它的第一个元素是 s 中大写字母的个数
    它的第二个元素是 s 中小写字母的个数 """
    # 你的代码：


###########################################
## 尝试写一个函数满足以下要求：
def sum_and_prod(L):
    """ L 是一个由数字组成的list
    返回一个 tuple ，它的第一个元素是 L 中所有元素的和
    它的第二个元素是 L 中所有元素的乘积 """
    # 你的代码：


###########################################
## 编写一个函数实现以下要求：
def remove_elem(L, e):
    """
    L 是一个 list
    Returns 一个新的 list ，里面的元素与 L 有相同的顺序
    但是不包含任何与 e 相同的元素。
    """
    # 你的代码：


# 测试你的代码：
L = [1,2,2,2]
print(remove_elem(L, 2)) # 输出 [1]


###########################################
## 编写一个函数实现以下要求：
def count_words(sen):
    """ sen 是一个 string 表示的句子
    Returns s 中有几个单词 (一个单词是两个空格之间的字符串） """
    # 你的代码：

# 测试你的代码：
print(count_words("Hello it's me")) # 3
