Python之程式控制【if/while】
- 1、集合的創建與常用操作
- 2、順序執行
- 3、程式主入口
- 4、條件判斷
- 5、while回圈
- 6、while回圈嵌套
- 作業
- 題1
1、集合的創建與常用操作





示例:
# s = {}
# print(type(s)) # <class 'dict'>
# s1 = set()
# print(s1)
# print(type(s1)) # <class 'set'>
# s2 = set([1, 2, 3, 1, 2, 3, 12, 3])
# print(s2) # 集合:自動去重
#
# s3 = set("hello world")
# print(s3) # 1.全部拆開 2.去重 3.無序
# s4 = set([1,2,3,4,5])
# s4.add(3) # 自動去重
# print(s4)
#
# s4.add(8) # 添加成功
# print(s4)
#
# s4.add("amy") # 元素可以是不可變資料型別 .是呼叫的意思 呼叫集合的方法
# print(s4)
#
# s4.add([1,2,3]) # 報錯,同字典key一樣,只能添加不可變物件,
# print(s4)
# s = {1,2,3,4,5}
# s.update("hello") # 更新,也就是將"hello"每個都拆開添加到s當中,仍然去重
# print(s)
# s2 = {1,2,3,4,5}
# print(s2[2]) # 無序的,所以沒有下標的概念
# s2.remove(4) # 洗掉元素
# print(s2)
#
# s2.remove("amy") # 元素不存在時,則報錯
# print(s2)
# s3 = set("hello world")
# s3.pop() # 隨機洗掉
# print(s3)
2、順序執行

示例:
# 對于普通陳述句,代碼從上之下執行
# print("hello world")
# print("hello world")
# print("hello world")
# # 此時,代碼從上至下執行,但是函式只有在呼叫時才會執行
# def func_name():
# print("i am func name")
#
#
# func_name()
# class MyClass:
# print("i am myclass")
#
# def my_test(self):
# print("i am mytest ")
#
#
# d = MyClass()
# d.my_test()
3、程式主入口

案例:
1、創建兩個.py檔案

2、demo01.py

執行demo01.py的檔案:

3、demo02.py

執行demo02.py的檔案:

總結:
- 只有檔案本身才能訪問程式主入口中呼叫的方法,其他檔案匯入此檔案,只會呼叫主入口之外的函式呼叫
- 程式主入口可以讓本身的函式呼叫不在其他檔案匯入時呼叫
4、條件判斷

示例:
# s_opt = input("今天發工資了嗎?y/n:")
# 1.冒號一定是英文狀態下的
# 2.縮進并不強制要求4個空格,但是盡量統一4個空格(1個tab)
# 3.elif后面跟條件,else不要跟條件
# 4.elif可以有多個,else只能有一個
# 5.python當中沒有switch-case陳述句
# if s_opt.upper() == 'Y':
# print("ye!吃大餐")
# elif s_opt.upper() == 'N':
# print("吃泡面")
# elif s_opt.upper() == 'E':
# print("退出程式")
# else:
# print("您的輸入有誤!")
s_opt = input("今天發工資了嗎?y/n:")
if s_opt.lower() == 'y':
salary = input("請輸入您的工資多少?")
debt = input("請問欠花唄多少?")
remain = float(salary) - float(debt)
print(f"您還完馬云爸爸的錢之后,還剩余{remain}")
if remain > 1000:
print("ye!吃大餐")
else:
print("吃土吧")
elif s_opt.lower() == 'n':
print("吃泡面")
else:
print("您的輸入有誤!")
5、while回圈





示例:
# while True:
# print("hello everyone")
# 初始化i,i相當于計數器,記錄回圈的次數
# i = 1
#
# while i <= 5:
# print("hello everyone")
# # i = i + 1
# i += 1
# # 1+2+3+4+5+....+100
# n = 1
# num_sum = 0
#
#
# # 回圈它是不可逆的,只能一直往下執行,
# while n <= 100:
# num_sum = num_sum + n # 0+1+2+3+...+100
# print(n)
# if n == 8:
# # break:退出回圈,注意:是回圈的陳述句,不是if的陳述句
# break
#
# n = n + 1
#
#
# print(num_sum) # 5050
# 1+2+3+4+5+....+100
# n = 1
# num_sum = 0
# 回圈它是不可逆的,只能一直往下執行,
# while n <= 100:
# num_sum = num_sum + n # 0+1+2+3+...+100
# n = n + 1
# if n == 8:
# # continue:退出當前回圈,進入下次回圈
# continue
# print(n)
#
#
# print(num_sum) # 5050
# while n <= 100:
# num_sum = num_sum + n # 0+1+2+3+...+100
# n = n + 1
# if n == 8:
# # continue
# # break
# continue
# print(n)
# else:
# # 當回圈是正常結束的時候,執行else
# # break是強制結束回圈體,所以不會執行else里面內容
# print("我是else")
#
#
# print(num_sum) # 5050
總結:
- 回圈它是不可逆的,只能一直往下執行,
- break:退出回圈,注意:是回圈的陳述句,不是if的陳述句
- continue:退出當前回圈,進入下次回圈
- 當回圈是正常結束的時候,執行else
- break是強制結束回圈體,所以不會執行else里面內容
6、while回圈嵌套

示例:
# *
# **
# ***
# ****
# 當前行數與星星個數是一致的
# 方法1
# row = 1
# while row <= 4:
# print("*" * row)
# row += 1
# 方法2
# 嵌套實作
row = 1
# 外層回圈代表:行數
while row <= 4:
starts = 1
while starts <= row:
print("*", end='')
# print(row, starts)
starts += 1
print('')
row += 1
作業
題1


user_input = input('最近學習了嗎?y/n')
courses = ['1.python', '2.高數', '3.退出']
flag = True
while flag:
if user_input.upper() == 'Y':
i = 1
print('very good')
while i <= len(courses):
print(courses[i - 1])
i += 1
else:
study_input = int(input('請輸入學習選項:'))
if study_input == 1:
print('python真不錯!')
flag = False
elif study_input == 2:
print('高數在手,天下我有!')
flag = False
elif study_input == 3:
print('已退出')
flag = False
else:
print('你輸入的選項有誤!請重新輸入')
elif user_input.lower() == 'n':
print('年輕人好自為之!')
flag = False
else:
print('輸入有誤!')
flag = False


轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/243585.html
標籤:python
