Pyhton基础篇(2)-变量、用户输入及条件语句(已更新)
1、 變量
Python中的變量概念很好理解,變量其實就是某個數值的“名字”。
變量定義的規則:
(1)?? 只能由數字、字母、下劃線組成(不能以數字開頭)
(2)?? 不能使用關鍵字作為變量名
['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield'] ?,這些關鍵字作為了解,不需要死記,當使用Python解釋器編寫代碼的過程中,如果誤用關鍵字作為變量名,解釋器會自動標紅該變量名以做提示。
(3)?? 最好不要使用Pyhton的內置函數作為變量名
在Python中,有很多內置函數,它們的用法和功能已經寫好,用的時候直接調用就可以了,如果將變量與內置函數定義成同一個名字,難免會出現一些意想不到的錯誤。看下面這個例子:
1 print(sum([1,2,3])) //調用內置函數sum,求和 2 運行結果: 3 6如果將sum作為變量名并賦予了一個其它的值,在用sum內置函數進行求和操作的話:
1 sum = 123 //將sum作為變量名,并給它賦值為123 2 print(sum([11,22])) //調用內置函數sum,求和 3 運行結果: 4 程序報錯:TypeError: 'int' object is not callable再次執行此程序會發現程序報錯了:“TypeError: 'int' object is not callable”,這是因為將sum作為變量名并賦值了之后,下面的程序在調用sum的時候會先找到該變量而不是先去找Python的內置函數sum(),所以最好不要用內置函數作為變量名使用。
在上面這個代碼中,類似于sum = 123 形式的 變量名 = 值這樣的操作稱為賦值,也可以理解為:將某個值綁定到了某個變量上,變量在被賦值后,就可以在表達式中使用該變量,變量可以理解為一個昵稱,來代指在內存中某個地址中的內容
2、 用戶輸入
程序是為了滿足人們的需求來供人使用的,當一個用戶在調用程序的時候,賦值給某個變量的值是不確定的,為了將無法預測的值賦值給指定的變量以便后面的程序可以調用該變量,就要用到input()函數。
input():永遠等待,直到用戶輸入了一個值,該程序才會繼續執行,并將輸入的值賦值給某一個變量。
以大家最熟悉的用戶登陸過程為例:提示用戶輸入用戶名和密碼,如果輸入正確輸出“Welcome”,輸入錯誤輸出“Failed”,代碼如下:
如上述的代碼實例,通過input()函數獲取到了用戶的實時輸入。
但還存在一個小問題:通過上面的代碼,用戶在輸入密碼的時候是明文的,如果想設置密碼為密文,就需要getpass模塊。模塊的概念稍后會講到。
1 username = "root" //定義正確的用戶名和密碼 2 password = "root" 3 """調用input()函數提示用戶輸入,輸入的值賦值給Personname和Personpasswd,如果沒有輸入,程序將停滯,不會繼續向下執行""" 4 Personname = input("Please enter your username:") 5 Personpasswd = input("Please enter your password:") 6 """判斷用戶輸入的用戶名和密碼是否與正確的用戶名和密碼相同""" 7 if Personname == username and Personpasswd == password: 8 print("Welcome") 9 else: 10 print("Failed")3、 模塊導入
Python通過導入模塊來擴展自己的功能。導入模塊通過import關鍵字,主要有以下4種方式:
1 import os //導入os模塊 2 from os import mkdir //導入os模塊中的mkdir函數 3 from os import mkdir,rmdir //導入os模塊中的mkdir,rmdir函數,用逗號分隔 4 from os import * //導入os模塊中的一切還有一種重命名的方法,如果需要導入的兩個模塊中都有mkdir方法,可以使用import+模塊名+as+自定義模塊名的方式來進行區分。
1 from moudle1 import mkdir as test1 //將moudle1模塊中的mkdir函數重命名為test1 2 from moudle2 import mkdir as test2 //將moudle2模塊中的mkdir函數重命名為test2通過test1.xxx和test2.xxx的方式調用。
4、 條件語句
- if 語句
if 條件語句用來進行判斷,如下所示為if條件語句的基本結構:
1 if條件: 2 內部代碼塊通過 if+表達式的方式來對所寫的表達式進行真假判斷,如果判定為真,執行后面的代碼塊。如果為假,該代碼塊不會被執行。
- if..else語句
當進行if條件判斷時,如果判定為真和判定為假都有不同的輸出,就需要使用if..else語句。
1 if 條件: 2 內部代碼塊1 3 else: 4 內部代碼塊2如上的代碼結構所示,通過if ..else語句如果判定的條件為真,就執行內部代碼塊1,否則會執行內部代碼塊2
- if..elif..else語句
如果對于多種條件的判定,都會有不同的返回結果,使用if..eles語句很顯然是不行的,它僅僅能返回真或假兩種結果,所以為了適用于多種判定,就需要使用if..elif..else語句,如下所示:
1 if 條件: 2 內部代碼塊1 3 elif 條件: 4 內部代碼塊2 5 …… 6 else: 7 內部代碼塊3可以在中間插入無數多個elif條件來對多種判定條件進行判斷,并得到相應的返回結果
- if條件語句的嵌套
在寫if嵌套語句的時候一定要注意代碼的縮進問題,所以初步學習的時候不建議加多個嵌套,否則很容易出現邏輯混亂甚至導致程序運行出錯。
下面通過一個簡單的小例子來演示下if語句的用法
應用場景:
(1)?? 輸入用戶名,判斷該用戶名是否正確,如果正確,則進入該用戶,否則輸出“Username does not exist”
(2)?? 如果用戶名正確,提示用戶輸入密碼,如果密碼輸入正確,輸出“welcome”,否則輸出“password input error”
1 username = "czp" 2 password = "123456" 3 login_user = input("Please enter your username:") 4 if login_user == username: 5 login_passwd = input("Please enter your password:") 6 if login_passwd == password: 7 print("welcome") 8 else: 9 print("password input error") 10 else: 11 print("Username does not exist")5、 循環語句
上面寫到的用戶登陸例子中,程序執行一次就會終止了,在很多時候,我們登陸的時候,難免會輸錯密碼或忘記密碼,輸錯一次就不允許再次輸入,就很不符合實際的應用場景,如果想讓其重復執行,就需要用到while循環語句。
- 基本while循環
當有一個需求是打印0-10的時候,可以用這樣的方式:
1 print(0) 2 print(1) 3 ……… 4 print(10)如果用循環的話,就更方便了
1 i=0 2 while i < 11: 3 print(i) 4 i+=1- break
- continue
continue和break的區別就是:雖然都是退出當前循環,continue是繼續執行程序,也就是說程序依舊在運行,而break就是直接跳出程序,程序終止。
6、 if/while 語句練習
1)使用while循環輸出 1 2 3 4 5 6 8 9 10(注意:沒有7)
1 n = 0 2 while n < 11: 3 if n ==7: 4 pass 5 else: 6 print(n) 7 n+=12) 求1-100的所有數的和
1 n = 1 2 s = 0 3 while n < 101: 4 s += n 5 n +=1 6 print(s)3)輸出 1-100 內的所有奇數
1 n = 1 2 while n < 101: 3 if n%2 != 0: 4 print(n) 5 n+=14)求1-2+3-4+5 ... 99的所有數的和
1 n = 1 2 s = 0 3 while n < 101: 4 if n%2 != 0: 5 s = s + n 6 else: 7 s = s - n 8 n+=1 9 print(s)5) 用戶登陸,登陸成功提示Welcome,登陸失敗提示Failed,只有三次機會,三次輸入錯誤,自動退出程序
1 user="czp" 2 n=0 3 while n<3: 4 user1=input("請輸入您的用戶名:") 5 if user1==user: 6 print("Welcome") 7 break 8 else: 9 print("Failed") 10 n+=1轉載于:https://www.cnblogs.com/Chen-Zhipeng/p/7680006.html
總結
以上是生活随笔為你收集整理的Pyhton基础篇(2)-变量、用户输入及条件语句(已更新)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [慕课笔记] node+mongodb建
- 下一篇: OAuth的MVC实现(微软)