python学习基础第一阶段day03

1. 物理行:程序员编写代码的行。
2. 逻辑行:python解释器需要执行的指令。
3. 建议一个逻辑行在一个物理行上。
4. 如果一个物理行中使用多个逻辑行,需要使用分号;隔开。
5. 5.  如果逻辑行过长,可以使用隐式换行或显式换行。
6. 隐式换行:所有括号的内容换行,称为隐式换行
																		括号包括:  ()  []   {} 三种
7.显式换行:通过折行符 \ (反斜杠)换行,必须放在一行的末尾,目的是告诉解释器,下一行也是本行的语句。

1个逻辑行对应1个物理行(建议)

a = 10
b = 20
c = a + b

*** 3个逻辑行对应1个物理行(不建议)***
a = 10;b = 20;c = a + b

1个逻辑行对应多个物理行

*换行符 *

d = 1 + 2 +
3 + 4 + 5 + 6 +
7 + 8 + 9

换行符 括号是天然的换行符

e = (1 + 2
+ 3 + 4 +
5 + 6 + 7 +
8 + 9)

选择语句

   缩进:4个空格
    if 条件:
        满足条件执行的代码
    else:
        不满足条件执行的代码


    if 条件1:
        满足条件1执行的代码
    elif 条件2:
        不满足条件1,但满足条件2执行的代码
    else:
        以上条件都不满足执行

sex = input(“请输入性别:”)
if sex == “男”:
print(“您好,先生!”)
elif sex == “女”:
print(“您好,女士!”)
else:
print(“性别未知”)

练习1

			获取季度(春天  夏天  秋天  冬天)
			显示相应的月份:
    					春天:1月2月3月
    					夏天:4月5月6月
    					秋天:7月8月9月
    					冬天:10月11月12月
if season == "春天":
    print("1月2月3月")
elif season == "夏天":
    print("4月5月6月")
elif season == "秋天":
    print("7月8月9月")
elif season == "冬天":
    print("10月11月12月")

练习2:

			录入4个同学体重,
			打印最重的体重。
			算法:
    				假设第一个是最大值
    				如果第二个大于假设的,则替换假设的.
    				如果第三个大于假设的,则替换假设的.
    				如果第四个大于假设的,则替换假设的.
    				最后输出假设的(最大的)
weight01 = float(input("请输入第一个同学体重:"))
weight02 = float(input("请输入第一个同学体重:"))
weight03 = float(input("请输入第一个同学体重:"))
weight04 = float(input("请输入第一个同学体重:"))
max_value = weight01
if max_value < weight02:
    max_value = weight02
if max_value < weight03:
    max_value = weight03
if max_value < weight04:
    max_value = weight04
print(max_value)

练习3:

		获取成绩
		判断等级(优秀 良好 及格 不及格  不在范围内0-100)
if score > 100 or score < 0:
    print("不在范围内0-100")
elif 90 <= score:
    print("优秀")
elif 80 <= score:
    print("良好")
elif 60 <= score:
    print("及格")
else:
    print("不及格")

练习4:

	获取一个年份,一个月份
    打印相应的天数
    1 3 5 7 8 10 12 --> 31天
    2 -- >28(平年)    29(闰年)
   	4 6 9 11 -->30天
year=int(input("获取一个年份:"))
month=int(input("获取一个月份:"))
if month<1 or month>12:
    print("月份有误")
elif month==4 or month==6 or month==9 or month==11:
    print("30天")
elif month==2:
    if year%4==0 and year%100!=0 or year%400==0:
        print("29天")
    else:
        print("28天")
else:
    print("31天")

调试:

让程序中断,逐语句执行。
目标:审查程序执行过程
			观察变量取值

步骤:

1. 加断点(在可能出错的行)

2. 开始调试

3. 逐语句执行F8/F7

4. 停止Ctrl + F2

练习:

		调试:
				显示结果:
    						应找回...
    						钱不够
commodity_price = input("请输入商品价格:")
buy_count = input("请输入购买数量:")
money = input("请输入金额:")
result = float(money) - float(commodity_price) * int(buy_count)
if result >= 0:
    print("应该找回" + str(result) + "元.")
else:
    print("钱不够")

真值表达式

message = input("请输入")
#if message != "":
if message:  **# 有值**
    print("输入了内容")
else:
    print("没有输入内容")

条件表达式

# if input("请输入性别:") == "男":
#     sex_code = 1
# else:
#     sex_code = 0
sex_code = 1 if input("请输入性别:") == "男" else 0

练习1:

获取一个整数,如果是奇数给变量state赋值为"奇数",否则赋值"偶数"

if int(input(“请输入整数:”)) % 2 == 1: #
state = “奇数”
else:
state = “偶数”
if int(input(“请输入整数:”)) % 2:
state = “奇数”
else:
state = “偶数”

练习2:

	获取一个年份,如果是闰年给变量day赋值为29,否则赋值28
year = int(input("请输入年份:"))
# 建议
day = 29 if year % 4 == 0 and year % 100 != 0 or year % 400 == 0 else 28
# day = 29 if not year % 4 and year % 100 or not year % 400 else 28
  

while

1. 作用: 
	可以让一段代码满足条件,重复执行。
2. 语法:
	while 条件:
    	满足条件执行的语句
	else:
    	不满足条件执行的语句
3. 说明:
	 else子句可以省略。
	在循环体内用break终止循环时,else子句不执行。

死循环

while True:
str_usd = input(“请输入美元:”)
result = float(str_usd) * 6.9845
print(str_usd + “美元=” + str(result) + “人民币”)
if input(“如果输入y则继续:”) != “y”:
break # 退出循环

循环计数

1. 在循环以前定义计数器
2. 在循环以内更新计数器

需求:执行5次

count = 0
while count < 5:
# print(“跑圈”)
print(count) # 0 1 2 3 4
count += 1

例题1:

猜数字游戏
    程序产生1---100之间的随机数
    在终端中重复猜测,直到猜对为止
    提示:请输入一个数 大了   小了   终于猜对了
number=random.randint(1,100)
print(number)
while True:
    number01=int(input("请输入一个数:"))
    if number01>number:
        print("大了")
    elif number01<number:
        print("小了")
    else:
        print("终于猜对了")
        break

例题2:

一张纸的厚度是0.01毫米
	请计算,对折多少次超过珠穆朗玛峰(8844.43米)
count = 0
thickness = 0.00001
while thickness < 8844.43:
    thickness *= 2
    count += 1
    print("对折"+str(count)+"次超过珠穆朗玛峰","总厚度是"+str(thickness)+"米")
print(count)

例题3:

	获取一个开始值,再获取一个结束值
		打印中间值
		5    10   --> 6 7 8 9
	   10    5   --> 9 8 7 6
begin = int(input("输入一个开始值:"))
end = int(input("输入一个结束值:"))
# while begin < end - 1:
#     begin += 1
#     print(begin)
#
# while begin > end + 1:
#     begin -= 1
#     print(begin)

dir = 1 if begin < end else -1
while begin != end - dir:
    begin += dir
    print(begin)

例题4:

如果输入e键退出,否则循环执行。
    调试:体会循环
while True:
    quarter=input("请输入一个季度:")
    if quarter=="春天":
        print("1月2月3月")
    elif quarter=="夏天":
        print("4月5月6月")
    elif quarter=="秋天":
        print("7月8月9月")
    elif quarter=="冬天":
        print("10月11月12月")
    else:
        print("输入有误")
    if input("如果输入e键退出:") =="e":
        break

练习5:

# 获取一个整数,如果是给变量state赋值"奇数",否则赋值"偶数".
state = "奇数" if int(input("请输入一个整数:")) % 2 else "偶数"
# state = "奇数" if int(input("请输入一个整数:")) % 2 != 0 else "偶数"
print(state)

练习6:

# 获取一个年份,如果是闰年,如果闰年给变量day赋值为29,否则赋值28.
year = int(input("请输入一个年份:"))
day = 29 if year % 4 == 0 and year % 100 != 0 or year % 400 == 0 else 28
# day = 29 if not year % 4  and year % 100  or not year % 400  else 28
print(day)

你可能感兴趣的:(python学习基础第一阶段day03)