第一部分
# 程序 = 算法 + 数据 # 做一道数学题,写一个可以计算投资收益率的算法, # 1. 银行定存,每年的收益是i%。 # 2. 通过算法事前,给定投资本金a,和投资年限b,计算出到期后的本息和fv # 算法公式: fv = a+ a*0.02*b # 通过用户输入获取存款数额,利率,存款年限,计算并输出结果 a = float(input("请输出存款金额(元):")) # 将10000赋值给变量a b = float(input("请输出存款年限(年):")) # 将5 赋值给变量b i = float(input("请输出存款利率(%):")) # 1.5 fv = a + a * (i/100) * b # 将a + a * 0.02 * b 的实际运算结果赋值给fv print(fv) # 输出自定义的变量fv的值 # 输出: 银行存款:{a}元以{i}%的利率存{b}年后的本息和为{fv} # print 可以通过在“”前加f,实现格式化输出,将{}中的变量替换成其对应的实际值 print(f"银行存款:{a}元以{i}%的利率存{b}年后的本息和为{fv}")
第二部分
# API (Application Programming Interface) 应用程序编程接口 # 输出API: print(需要输出的内容) -> None(空) # 输出一个:你好,世界 print("你好,世界") # 输入API: input(输入提示语句) -> str (字符串String) name = input("请输入你的名字:") print(f"你好,{name}") # 变量定义 name1 = "小明" name2 = "小红" print(name)
第三部分
# 定一个字符串变量name,将小红赋值给name变量 name = "小红是中国人" # 字符串支持通过切片[m]/[m:n] [m,n)的方式取其中的部分数据的,计算机的计算从零开始 c1 = name[1] print(c1) c2 = name[3:-1] print(c2) # python 的默认安装路径如下: # C:\Users\Administrator\AppData\Local\Programs\Python\Python38\python.exe # 请输出: # python所安装的盘符[C:],和python运行程序的名称[python.exe] # 使用python 字符串切片方法完成 path = r"C:\Users\Administrator\AppData\Local\Programs\Python\Python38\python.exe" disk = path[0:2] exe = path[-10:] print(f"python所安装的盘符[{disk}],和python运行程序的名称[{exe}]")
第四部分
# 开发一个身份证信息分析程序 # 1. 用户输入一个18位的身份证号码 id = input("请输入一个18位身份证号码:") # 2. 输出,该身份证号码持有者的出生年月日 year = id[6:10] month = id[10:12] day = id[12:14] # 3. 输出格式: YYYY-MM-dd print(f"{year}-{month}-{day}")
第五部分
# API: type(数据) -> 数据的类型 # 目标:获取每种数据类型在python中的别名 # 字符串:str name = "小明" name_data_type = type(name) print(name_data_type) # 数值:整型: int num1 = 10 print(type(num1)) # 数值:浮点型: float num2 = 3.14 print(type(num2)) # 数据类型的运算 # 在两个字符串之间的+号,代表拼接 a = "你好" + "小明" print(a) # 在两个数值之间的+号,代表数学运算 b = 2 + 3 print(b) # !!! 字符串和数值之间是不能运算的 # c = "你好" + 2021 # 此段代码报错 # print(c) # 可以通过 数据类型(值) 的方式,将值得数据类型进行强制转换 # int(a) -> 将a的数据类型,强制转换成整型int # float(a) -> 将a的数据类型,强制转换成浮点型float # str(a) -> 将a的数据类型,强制转换成字符串str x = "2" y = "3" z = int(x) + int(y) print(z) # 练习 # API input() -> str 用户获取用户在键盘上的输入信息 # 现在需要设计一个程序,用户分别输入两个数字,程序输出两个数字的和 # 请输入第1个数字: {a} a = float(input("请输入第1个数字:")) # 请输入第2个数字: {b} b = float(input("请输入第2个数字:")) # 加:+ {a} + {b} = {c} print(f"{a} + {b} = {a + b}") # 减:- {a} - {b} = {d} print(f"{a} + {b} = {a - b}") # 乘:* {a} - {b} = {e} print(f"{a} + {b} = {a * b}") # 除:/ {a} - {b} = {f} print(f"{a} + {b} = {a / b}") # 取余:% {a} % {b} = {g} print(f"{a} % {b} = {a % b}")
第六部分
# Python 存在一个真假的类型 布尔值: True/False print(5 > 7) # 假:False print(5 < 7) # 真:True b = 10 < 9 # 布尔值b: bool print(type(b)) # 练习: 用户输入两个数字,如果数字1大于数字2, # 如果输入的数字1比数字2大, 则输出 {数字1}大于{数字2}为True # 如果输入的数字1比数字2小, 则输出 {数字1}大于{数字2}为False # a = float(input("请输入第1个数字:")) # b = float(input("请输入第2个数字:")) # print(f"{a}大于{b}为{a>b}") # 条件判断语法:if ... else ''' if 表达式1: 如果为真执行的语句1 ...(代码块) 如果为真执行的语句n elif 表达式2: 如果为真执行的语句1 ...(代码块) 如果为真执行的语句n else: 如果为假执行的语句1 ... 如果为假执行的语句n ''' # 练习: 用户输入一个数字(整数),程序输出: {数字}是奇数/偶数 # 奇数: a%2==1; 偶数: a%2 == 0; 0既不是奇数,也不是偶数 a = int(input("请输入第1个数字:")) if a == 0: print("0既不是奇数,也不是偶数") elif a % 2 == 1: print(f"{a}是奇数") else: print(f"{a}是偶数") # 练习:用户输入一个身份证号码 # 如果成年了,输出: {身份证}已成年 # 如果未成年,输出: {身份证}未成年 # 成年的判断标准:年龄大于18岁(今年是2021年) id = input("请输入一个身份证号码:") id_year = int(id[6:10]) current_year = 2021 if current_year - id_year > 18: print(f"{id}已成年") else: print(f"{id}未成年")
第七部分
# 数据类型:列表(list) # 假设有5个小朋友在排队, 使用一种数据类型存放:list child = ["小白", "小黑", "小绿", "小红", "小紫"] print(child) # 获取并打印 child 的数据类型 :list print(type(child)) # 列表可以通过索引(index: 0,1,2,3,4...-3,-2,-1)的方式获取指定位置的值 # 语法: list[index] # 打印出排在第1位的小朋友的名字 print(child[0]) # 打印出排在第3位的小朋友的名字 print(child[2]) # 打印出排在最后1位的小朋友的名字 print(child[-1]) # 打印出排在前3位的小朋友的名字 print(child[0:3]) # API, 获取列表中的元素个数: len() -> int n = len(child) print(f"队伍里一共有{n}个小朋友") # 输出列表中所有元素内容: 遍历 for name in child: print(f"我的名字是:{name}") # 按行分别输出给定的一组数字是奇数还是偶数,还是既不是奇数,也不是偶数 nums = [1,2,3,4,5,6,7,8,9,0] # 输出: # 1是奇数 # 2是偶数 # ... # 0 既不是奇数也不是偶数 for a in nums: if a == 0: print("0既不是奇数,也不是偶数") elif a % 2 == 1: print(f"{a}是奇数") else: print(f"{a}是偶数")