<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12
      song1002  

      【一】用戶交互

      • 交互的本質就是輸入、輸出
      • 用戶交互就是人往計算機中input/輸入數據,計算機print/輸出結果

      【二】為什么要與用戶交互

      • 為了讓計算機能夠像人一樣與用戶溝通交流

      【三】如何實現交互

      【1】輸入(input)

      • input接受的所有數據類型都是 str 類型
      username = input("請輸入你的用戶名:>>>")
      password = input('請輸入你的密碼:>>>')
      
      print(username, type(username))  # input接受的所有數據類型都是str類型
      print(password, type(password))  # input接受的所有數據類型都是str類型
      
      # input 語法
      # (1)彈出輸入框
      # input()
      # (2)提示信息
      # print("請輸入用戶名")
      # input()
      # (3)提示輸入信息并且獲取到輸入的信息
      # 提示輸入框
      # username = input("請輸入用戶名 :>>>> ")
      # # 用變量接收到輸入的內容
      # print(username)
      # (4)輸入的內容永遠是字符串
      # username = input("請輸入用戶名 :>>>> ")
      # 用變量接收到輸入的內容
      # print(username, type(username))
      # 1 <class 'str'>
      # True <class 'str'>
      
      # (5)數據之間進行運算需要轉換數據類型
      # num_1 = input("請輸入數字1 :>>> ")
      # num_2 = input("請輸入數字2 :>>> ")
      # result = num_1 + num_2
      # 強制數據類型轉換 ---> 將符合當前數據類型的格式的數據轉換為指定的數據類型
      # 1 = int("1")
      # int("a")
      # result = int(num_1) + int(num_2)
      # print(result,type(result))
      

      【2】輸出(print)

      • print 函數用于向控制臺輸出信息。你可以使用 print 函數來顯示程序的運行結果、提示信息等。
      # 直接打印變量或者字符串或者其他
      # print("Hello World!")
      name = "dream"
      age = 18
      # print(f"my name is {name},my age is {age}")
      
      # print 語句允許存放多個變量名及變量值,但是每一個元素之間要用逗號 隔開
      print(f"my name is", name, "my age is", age)
      
      # print 可以修改默認的尾椎
      # 默認自帶一個結束符,換行符,我們可以通過 end 參數修改默認的結束符
      print(name, end='*')
      print(age, end='&')
      

      【四】運算符

      【1】算數運算符

      【1】加法運算符 +
      x = 9
      y = 2
      result = x + y
      print(result)  # 輸出:11
      【2】減法運算符 -
      x = 9
      y = 2
      result = x - y
      print(result)  # 輸出:7
      【3】乘法運算符 *
      x = 9
      y = 2
      result = x * y
      print(result)  # 輸出:18
      【4】除法運算符 /
      x = 9
      y = 2
      result = x / y
      print(result)  # 輸出:4.5
      【5】取整除運算符 //
      x = 9
      y = 2
      result = x // y
      print(result)  # 輸出:4
      【6】求余數運算符 %
      x = 9
      y = 2
      result = x % y
      print(result)  # 輸出:1
      【7】冪運算符 **
      x = 9
      y = 2
      result = x ** y
      print(result)  # 輸出:81
      

      【2】比較運算符

      【1】相等運算符 ==
      x = 9
      y = 2
      result = x == y
      print(result)  # 輸出:False
      【2】不等運算符 !=
      x = 9
      y = 2
      result = x != y
      print(result)  # 輸出:True
      【3】大于運算符 >
      x = 9
      y = 2
      result = x > y
      print(result)  # 輸出:True
      【4】小于運算符 <
      x = 9
      y = 2
      result = x < y
      print(result)  # 輸出:False
      【5】大于等于運算符 >=
      x = 9
      y = 2
      result = x >= y
      print(result)  # 輸出:True
      【6】小于等于運算符 <=
      x = 9
      y = 2
      result = x <= y
      print(result)  # 輸出:False
      

      【3】賦值運算符

      • python語法中除了有=號這種簡單的賦值運算外
      • 還支持增量賦值、鏈式賦值、交叉賦值、解壓賦值
      • 這些賦值運算符存在的意義都是為了讓我們的代碼看起來更加精簡。
        • 我們以x=9,y=2為例先來介紹一下增量賦值
      # = += -= *= /= %= //= **=
      # += 增量賦值
      增量賦值運算符用于將變量與右側的表達式相結合,并將結果賦值給變量
      num_one = 2
      num_one += 1  # num_one = num_one + 1
      print(num_one)
      num_two = num_one + 1
      num_two += num_one
      print(num_two)
      # 鏈式賦值
      鏈式賦值允許在單一語句中給多個變量賦值。這樣可以減少代碼行數,提高代碼的緊湊性。
      a = b = c = 6
      print(a, b, c)
      # 交叉賦值
      交叉賦值允許在不使用臨時變量的情況下,交換兩個變量的值。
      x = 8
      y = 9
      x, y = y, x
      print(x, y)
      # 解壓賦值
      解壓賦值允許將一個可迭代對象(如列表、元組等)的值解壓到多個變量中,以便進一步使用。
      a, b = (1, 2)
      print(a, b)
      # 位置變量名少了不行
      # a, b = (1, 2, 3)
      # 位置變量名多了不行
      # a, b, c, d = (1, 2, 3)
      # 使用下劃線代替多余的元素
      _, b, _ = (1, 2, 3)
      print(b)
      

      【五】邏輯運算符

      • 邏輯運算符用于連接多個條件,進行關聯判斷,并返回布爾值 TrueFalse
      • 常用的邏輯運算符包括與(and)、或(or)、非(not)。

      【1】與運算符 (and)

      • 與運算符 and 在兩個條件都為 True 時,返回 True;如果其中一個條件為 False,則返回 False
      x = 5
      y = 10
      
      result = (x > 0) and (y > 0)
      print(result)  # 輸出:True
      
      • 在上述例子中,(x > 0) and (y > 0) 表示同時判斷 x > 0y > 0 是否都為 True,因為兩個條件都滿足,所以結果為 True

      【2】或運算符 (or)

      • 或運算符 or 在兩個條件中至少有一個為 True 時,返回 True;如果兩個條件都為 False,則返回 False
      x = -5
      y = 10
      
      result = (x > 0) or (y > 0)
      print(result)  # 輸出:True
      
      • 在上述例子中,(x > 0) or (y > 0) 表示判斷 x > 0 或者 y > 0 至少有一個條件為 True,因為 y > 0True,所以結果為 True。

      【3】非運算符 (not)

      • 非運算符 not 用于對一個條件取反,如果條件為 True,則返回 False;如果條件為 False,則返回 True
      x = 5
      
      result = not (x > 0)
      print(result)  # 輸出:False
      
      • 在上述例子中,not (x > 0) 表示對條件 x > 0 取反,因為 x > 0True,所以結果為 False。

      【4】連續問題

      [1]連續多個 and

      • 在連續多個 and 運算中,如果其中一個條件為 False,則整個表達式的結果為 False,即使后面的條件都為 True。

      [2]連續多個 or

      在連續多個 or 運算中,如果其中一個條件為 True,則整個表達式的結果為 True,即使后面的條件都為 False

      【3】優先級 not>and>or

      print(3 > 4 and 4 > 3 or 1 == 3 and 'x' == 'x' or 3 > 3)
      # False     and       True  or    Flase      and    True   or   Flase
      # false  or false or flase
      # false
      # 我們自己寫邏輯運算的時候建議 用 () 聲明優先級
      
      print(10 and 0 or '' and 0 or 'abc' or 'egon' == 'dsb' and 333 or 10 > 4)
      #  10  and   0   or  false and false or "abc"  or false  adn 333 or true
      #        false or flase or "abc"  or false or true
      #  false or "abc" or false or true
      #  "abc" or false or true
      #  "abc" or true
      #  "abc"
      print("abc")
      

      【六】成員運算符

      【1】in運算符

      fruits = ["apple", "banana", "cherry"]
      
      print("banana" in fruits)  # True
      print("orange" in fruits)  # False
      

      【2】not in運算符

      fruits = ["apple", "banana", "cherry"]
      
      print("banana" not in fruits)  # False
      print("orange" not in fruits)  # True
      

      【七】身份運算符

      • 身份運算符用于比較對象的內存地址,即判斷兩個對象是否指向同一塊內存地址。

      【1】is運算符

      a = [1, 2, 3]
      b = a
      c = [1, 2, 3]
      
      print(a is b)  # True
      print(a is c)  # False 因為a 和 c 是兩個獨立的內存空間,所以 a 不是 c
      

      【2】is not運算符

      a = [1, 2, 3]
      b = a
      c = [1, 2, 3]
      
      print(a is not b)  # False
      print(a is not c)  # True
      
      • 這兩個運算符主要用于檢查對象的標識,即它們是否指向相同的內存地址。
      # 【補充】 == 和 is 的區別
      # 比較運算符,比較的值先相等
      # == 比較的是 值是否相等
      # is 比較的是 內存空間地址
      
      • == 雙等號比較的是value是否相等
      • is用于比較兩個對象的標識id(內存地址)是否相同
      • 在實際應用中,特別是對于可變對象,==通常更適合用于比較值,而is更適合用于比較對象的身份。
      • id相同,內存地址必定相同,意味著type和value必定相同
      • value相同type肯定相同,但id可能不同

      【八】流程控制(if-elif-else)

      • 程序是由語句構成,而流程控制語句 是用來控制程序中每條語句執行順序的語句。
        • 可以通過控制語句實現更豐富的邏輯以及更強大的功能。
        • 幾乎所有編程語言都有流程控制語句,功能也都基本相似。
      • 其流程控制方式有
        • 順序結構
        • 分支結構
        • 循環結構
      • 這里最簡單最常用的就是順序結構,即語句從上至下一一執行。

      【1】順序結構

      • 順序結構用于按照既定的順序執行一系列的操作,這是程序執行的最基本模式。
      • 通過良好的順序結構,可以清晰地表達程序的邏輯流程,使代碼易讀易懂。
      • 這有助于開發者理解和維護代碼,也方便調試。

      【2】單分支結構(if)

      • 單分支結構指的是程序根據條件的成立與否,執行兩個分支中的其中一個。
      • 常見的單分支結構語法是if語句。
      【1】單分支結構
      # if 條件:
      # 四個空格 代碼
      # score = 89
      # if score > 90:
      #     # 這里面的代碼我們稱之為代碼體/代碼塊
      #     print(f"當前成績為 {score} , 評級為優秀!")
      # print(f"111")
      
      # 單分支結構會依次向下執行代碼# 并且在遇到條件時進行判斷,如果條件為真則執行當前代碼提
      
      # 【2】雙分支條件
      # if 條件:
      # 四個空格 代碼體
      # else:
      # 四個空格 代碼體
      # score = 89
      # if score >= 90:
      #     print(f" {score} 優秀")
      # else:
      #     print("不優秀")
      # print(11)
      # 雙分支條件:有一個條件做約束,如果當前條件不符合,則會進入到另一個條件的代碼體中
      
      # 【3】多分支
      # 90   80   70   70以下
      # 優秀  良好 及格    不及格
      # if 條件:
      # 四個空格 代碼體
      # elif 條件:
      # 四個空格 代碼體
      # elif 條件:
      # 四個空格 代碼體
      # elif 條件:
      # 四個空格 代碼體
      # else:
      # 四個空格 代碼體
      
      score = 69
      if score >= 90:
          print(f"{score} :>>>> 優秀")
      elif score >= 80:
          print(f"{score} :>>>> 良好")
      elif score >= 70:
          print(f"{score} :>>>> 及格")
      else:
          if score >= 60:
              print(f"差及格還有一丟丟")
          else:
              print(f"{score} :>>>> 不及格")
      

      【3】循環結構(while)

      # 循環結構
      # 一個條件不符合我當前狀態的時候我可能還會二次判斷
      # 密碼嘗試上 可以進行多次密碼的嘗試
      # while 條件(循環截止的條件):
      # 代碼體
      
      # 達到某個條件的時候想結束當前循環
      # continue
      # 結束整個循環
      # break
      # while True:
      #     score = int(input("請輸入成績:》》》》"))
      #     if score >= 90:
      #         print(f"優秀")
      #     else:
      #         print(f"不及格")
      
      count = 0
      while count <=9:
          count += 1
          if count == 1:
              print("這是 1 ")
          elif count == 3:
              print("這是 3 ")
              # 結束本次循環
              continue  # 走到continue 以后就不會繼續鄉下執行代碼,而是回到了  while 條件重新進入當前循環
          elif count == 5:
              print(f"這是 :>>> {count}")
              break # 類似于程序出現錯誤直接將當前程序打斷
          print(count)
      
      # 做登錄的三次嘗試
      user = {"username": "song","password":"123"}
      username = user["username"]
      password = user["password"]
      count = 0
      while count < 3:
          username_input = input("輸入用戶名:")
          password_input = input("輸入密碼: ")
          if  username_input == username and password_input == password:
              print("登錄成功")
              break
          else:
              count = count + 1
              print("登錄錯誤 你還剩下次機會",(3 - count),"次機會")
      print(count)
      

      練習題

      # 練習題:
      # 前提:創建一個字典存了用戶的用戶名和密碼
      # 有一個輸入框輸入用戶名和密碼
      # 有了用戶名以后去去字典中查密碼
      # 有了用戶名但是字典中不存在的情況,打印當前用戶名不存在
      # 將字典中的密碼和輸入的密碼進行比對
      # 一致打印登陸成功
      # 否則提示登錄失敗
      
      user = {"username": "song","password":"123"}
      username = user["username"]
      password = user["password"]
      count = 0
      while count < 3:
          username_input = input("輸入用戶名:")
          password_input = input("輸入密碼: ")
          if  username_input == username and password_input == password:
              print("登錄成功")
              break
          else:
              count = count + 1
              print("登錄錯誤 你還剩下次機會",(3 - count),"次機會")
      print(count)
      
      # 【1】定義一個字典 ---> 又保存了我們的正確的登錄信息
      # {'dream':"521","hope":"369"} ---> 字典取值 --- get()
      # {"dream":["dream","521"]} ---> 把列表取出來 --> 在進行解壓賦值
      # 【2】兩個輸入框 ---> 輸入用戶名和密碼
      # 字符串 ---> 字典中的鍵 ---> 直接根據鍵取值 --->  成員運算
      
      # 【3】多用戶登錄
      # 【3.1】有一個信息字典
      # 先判斷有沒有鍵 ---
      # 沒有鍵
      # 去字典中取出密碼
      if not 'dream' in user_dict:
          print(f"登錄失敗")
      pwd = user_dict.get('key')
      
      # 模擬登錄
      
      posted on 2024-03-31 22:06  全宇宙最帥  閱讀(83)  評論(0)    收藏  舉報
       
      主站蜘蛛池模板: 亚洲av色精品一区二区| 久久亚洲精品11p| 国产午夜精品久久精品电影| 亚洲中文字幕伊人久久无码 | 亚洲一区二区av偷偷| 99re热这里只有精品视频| 亚洲综合国产成人丁香五| 天台县| 久久亚洲精品情侣| 一二三四日本高清社区5| 日韩A人毛片精品无人区乱码| 国产粉嫩高中无套进入| 乱人伦人妻系列| 青青青视频免费一区二区| 午夜一区二区三区视频| 亚洲精品国模一区二区| 中文字幕乱码熟妇五十中出 | 久久久久国产精品熟女影院| 蜜臀av久久国产午夜福利软件| 午夜福利国产精品视频| 最新亚洲av日韩av二区| 韩国精品一区二区三区在线观看| 一本大道无码av天堂| 日本一区二区三本视频在线观看| 四虎永久免费高清视频| 漂亮人妻中文字幕丝袜| 亚洲精品日产AⅤ| 中国熟妇牲交视频| 国产亚洲精品久久久久久无亚洲| 阿瓦提县| 亚洲国产美国产综合一区| 亚洲精品日本久久久中文字幕 | 国产精品国产三级国产试看| 精品人妻一区二区| 成人午夜激情在线观看| 日韩有码中文字幕国产| 国产在线国偷精品产拍| 2020久久国产综合精品swag| 亚洲AV无码破坏版在线观看| 竹山县| 在线视频中文字幕二区|