Python學習
第一個python程式:
在搭建完成python環境後,我們在python編譯器中來寫我們的第一個Python程式 “Hello,world !”
print("Hello,world !")
變量
變量是程式設計語言中用來在記憶體中存儲規定範圍的值,并且值可以被改變。
變量命名規則:
1 第一個字元必須是字母表中的字母或下劃線
2辨別符的其他部分有字母,數字和下劃線組成
3 辨別符對大小寫敏感
不能使用下面的系統保留關鍵字做為變量名稱
['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
變量示例:name = "xiaoming"
name 就是變量的名稱,xiaoming是變量的值
name= "xiaohong" 現在,name變量的值就被改變為xiaohong
變量存儲的是指向記憶體中值的路徑,
name = "xiaoming"
name2 = name
name = "xiaohong"
給變量name指派為xiaoming
将變量name的值付給neme2
在改變變量name 的值為xiaohong
是以現在列印的結果是:變量 name = xiaohong ,變量name2 = xiaoming
常量和變量都是用來在記憶體中存儲規定範圍的值,常量和變量的差別是變量的值可以被改變,而常量的值一旦被确定,則不能被更改。
而python語言中不支援常量,但如果我們需要定義常量,一般使用變量來代替,為了避免常量與變量混淆,我們約定常量一般使用全字母大寫來表示。
如
NAME = “changliang”
python字元編碼
字元編碼介紹
ASCII
基本的 ASCII 字元集共有 128 個字元,其中有 96 個可列印字元,包括常用的字母、數字、标點符号等,另外還有 32 個控制字元。标準 ASCII 碼使用 7 個二進位對字元進行編碼,對應的 ISO 标準為 ISO646 标準。下表展示了基本 ASCII 字元集及其編碼:
GB2312
為了滿足國内計算機中使用漢字的需求,中國國家标準總局釋出的國家标準編碼,GB2312共收錄了7445個字元,其中6763個漢字和682個其他字元。
GBK1.0
後來GB2312擴充成GBK1.0,GBK1.0收錄了21886個字元。在1995年GBK1.0成為國家正式标準
GB18030
後來GBK1.0也不夠用了,在2000年GB18030取代了GBK1.0 成為了國家新的正式标準。
Unicode
因ASCII無法将全世界的所有文字和符号全部表示。是以新推出了一種可以表示所有字元的編碼,所有的字元占用2個位元組
UTF-8
在Unicode 編碼的基礎上改為英文字元占用1個位元組,中文字元占用3個位元組。現在成為最流行使用的編碼
注釋
在所有程式設計語言中,注釋都是相當重要的,目的是為了讓别人和自己很容易看懂。為了讓别人一看就知道這段代碼是做什麼用的。
python中注釋的使用方法:
單行注釋 #
python中每行 #号後面的都會被解釋為注
比如: # 這是一行注釋
多行注釋 ''' '''
多行注釋以三個單引号或雙引号開始和結尾,中間的部分為注釋部分
比如'''
這是好幾行注釋
O(∩_∩)O '''
多行注釋的使用
多行注釋并不止可以當作注釋,也可以用于多行輸出列印
zhushi = '''
将這個注釋指派給變量zhushi ''''
print(zhushi)
這樣就可以在按照格式列印了
多行字元串拼接
格式化輸出在各種語言中都是頻繁使用的
python中有好幾種方法來格式化輸出
比如使用占位符:
name = "xiaoming"
age = 18
job = "IT"
infor = '''
--------hell , %s-------
name : %s
age: %d
job: %s
------------------------''' % (name,name,age,job)
在上面的例子中使用了占位符來表示變量,常用的占位符有: %s 字元串型的占位符,%d 數字整型的占位符,%f 浮點小數型的占位符
使用 print(type(變量))可以列印變量的資料類型
第二種方法 format()
name = "xiaoming"
age = 18
job = "IT"
info2 = '''
--------hell , {name}-------
name : {name}
age: {age}
job: {job}
------------------------''' .format(name=name,age=age,job=job) '''
強制類型轉換
int() 強制轉換為數字類型
str() 強制轉換為字元串類型
使用者輸入互動
input()使用者輸入,接受的值為字元串,如果需要接收數字類型的值時,需要進行資料類行強制轉換
比如接收一個數字變量:
number = int(input("please input a number:"))
input()密碼域隐藏輸入内容
首先調用getpass子產品
import getpass
passwd = getpass.getpass("password:")
條件判斷 if elif else
passwd = '123456'
guess_pass = getpass.getpass("please input your password :")
if guess_pass == passwd :
print("login success !")
else:
print("login failed ! the password is wrong")
上面這段代碼定義了一個變量passwd,并讓使用者輸入的密碼指派給變量guess_pass,并将使用者輸入的變量guess_pass和變量passwd的值進行比較,如果相等則輸出登陸正确,否則輸出密碼錯誤。
條件比較
> 大于 <小于 ==等于 !=不等于 >= 大于等于 <= 小于等于
否則如果elif
判斷失敗後再次進行判斷
num = 123
guess_num = int(input("please input a number:"))
if guess_num == num:
print("yes ,you got it ")
elif guess_num > num:
print("think smaller")
else:
print("think bigger")
while 循環
格式 while 判斷條件(true 或 false)
while True
num = 10
while True:
guess_num = int(input("please input your number:"))
if guess_num == num:
print("yes ,you got it ")
break
elif guess_num > num:
print("think smaller")
else:
print("think bigger")
上面的代碼實作了如果輸入不正确将一直循環輸入,直到輸入正确為止
count = 0
while count > 3:
print(count)
count +=1
使用變量count每次循環自加進行循環次數控制
for循環
for i in range(10):
print(i)
使用變量i 進行循環控制,range(10)表示 {0,1,2,3,4,......,10}
for i in range(0,10,2):
print(i)
range(0,10,2)表示 range 範圍從0開始,共10位,輸出2的倍數