python基礎:
一 編程語言
什麼是編程語言?
上面說起的可以被計算機所識別的表達方式即編程語言,語言是溝通的介質,而編程語言是程序員與計算機溝通的介質。在編程的世界裏,計算機更像是人的奴隸,人類編程的目的就命令奴隸去工做。
什麼是編程?
編程即程序員根據需求把本身的思想流程按照某種編程語言的語法風格編寫下來,產出的結果就是包含一堆字符的文件。
強調:
程序在未運行前跟普通文件無異,只有程序在運行時,文件內所寫的字符纔有特定的語法意義。
二 計算機組成部分
CPU
內存
外存
輸入設備
輸出設備
三 python的安裝與使用
1.安裝python解釋器
2.安裝pycharm編輯器
3.編寫python代碼,並輸出打印hello world!
四 變量
可變化的量。
變量值: 是真實存放在內存中的一塊內存地址。
變量名: 用於與變量值綁定關係的。
賦值=號: 將變量的值綁定給變量名的。
五 常量
不可變的量。
以全大寫命名。
並非不能對其修改,而是你們都規定好凡是全大寫的變量都稱之爲常量,不可對其進行修改。
六 用戶與程序交互
輸入:
input()
1 name = input("input your name:")
輸出:
print()
1 #輸出字符串 2 print("cjw") 3 #輸出變量 4 name = 'tank' 5 print (name) #tank
七 格式化輸出
尊敬的用戶,你好!您本月的話費扣除99元,還剩0元。
# 經過某種佔位符,用於替換字符串中某個位置的字符。
佔位符:
%s: 能夠替換任意類型
1 #把100替換給%s 2 str_01 = '尊敬的用戶,您好!您本月的話費已經扣除%s元,還剩0元。'%100 3 # 尊敬的用戶,您好!您本月的話費已經扣除100元,還剩0元。
%d: 能夠替換數字類型
1 #把一百替換給%s,50替換給%d 2 str_01 = '尊敬的用戶,您好!您本月的話費已經扣除%s元,還剩%d元。'%('一百',50) 3 print(str_01) 4 # 尊敬的用戶,您好!您本月的話費已經扣除一百元,還剩50元。
示例:
尊敬的用戶,你好!您本月的話費扣除%s元,還剩%d元。
1 #把一百替換給%s,50替換給%d 2 str_01 = '尊敬的用戶,您好!您本月的話費已經扣除%s元,還剩%d元。'%('一百',50) 3 print(str_01) 4 # 尊敬的用戶,您好!您本月的話費已經扣除100元,還剩50元。
八 基本數據類型
1.數字類型:
整型: int
1 # int 2 age = int(3) 3 print(age) 4 print(type(age)) 5 6 age2 = 11 7 print(age2) 8 print(type(age2))
浮點型: float
# float sal = 1.04 print(sal) print(type(sal))
2.字符串類型
做用:名字,性別,國籍,地址等描述信息
定義:在單引號\雙引號\三引號內,由一串字符組成
name='tank'
1 name = 'cjw'
優先掌握的操做:
一、按索引取值(正向取+反向取) :只能取
1 # 一、按索引取值(正向去+反向取):只能取 2 # 正向取 3 str1 = 'hello cjw!' 4 print(str1[0]) #h 5 print(str1[6]) #c 6 7 #反向取 8 print(str1[-3]) #j
二、切片(顧頭不顧尾,步長)
1 # 二、切片 2 srt1 = 'hello cjw!' 3 # 0 — (5 - 1) 4 print(str[0:5]) #hello 5 6 # 步長 7 print(str1[0:10]) #hello cjw! 8 print(str1[0:10:2]) #heocw
三、長度len
1 print(len(str1)) #10
四、成員運算in和not in
1 #成員運算in和not in 2 print('h' in str1) #Ture 3 print('h' not in str1) #False
五、移除空白strip
1 #移除字符串左右兩邊的空額 2 str1 = ' hello cjw! ' 3 print(str1) 4 print(str1.strip()) 5 6 #去掉指定字符串 7 str2 = '@cjw@' 8 print(str2.strip('@'))
六、切分split
str1 = 'hello cjw!' #根據str1內的空格進行切分 #切出來的值會存放在[]列表中。 print(str1.split(' ')) #['hello','cjw!']
七、循環
1 #對str1字符串進行遍歷,打印每一個字符 2 for line in str1: 3 print(line) 4 #h 5 #e 6 #l 7 #l 8 #o 9 # 10 #c 11 #j 12 #w 13 #!
須要掌握的:
一、strip,lstrip,rstrip
1 # 一、strip,lstrip,rstrip 2 str1 = 'hello wuyuefeng' 3 print(str1) 4 # 去掉兩邊空格 5 print(str1.strip()) 6 # 去掉左邊空格 7 # print(str1.lstrip()) 8 # 去掉右邊空格 9 print(str1.rstrip())
二、lower,upper
1 # 二、lower,upper 2 str1 = 'hello WuYueFeng' 3 # 轉換成小寫 4 # print(str1.lower()) 5 # 轉換成大寫 6 print(str1.upper())
三、startswith,endswith
1 # 三、startswith,endswith 2 str1 = 'hello WuYueFeng' 3 # 判斷str1字符開頭是否等於hello 4 print(str1.startswith('hello')) # True 5 # 判斷str1字符末尾是否等於WuYueFeng 6 print(str1.endswith('WuYueFeng')) # True
四、format的三種玩法
1 # 四、format(格式化輸出)的三種玩法 2 # str1 = 'my name is %s, my age %s!' % ('tank', 18) 3 print(str1) 4 5 # 方式一: 根據位置順序格式化 6 print('my name is {}, my age {}!'.format('tank', 18)) 7 8 # 方式二: 根據索引格式化 9 print('my name is {0}, my age {1}!'.format('tank', 18)) 10 11 # 方式三: 指名道姓地格式化 12 print('my name is {name}, my age {age}!'.format(age=18, name='tank'))
五、split,rsplit
1 # 五、split 切分
六、join
1 # 六、join 字符串拼接 2 # 報錯,只容許字符串拼接 3 print(' '.join(['tank', 18])) 4 # 根據空格,把列表中的每個字符串進行拼接 5 print(' '.join(['tank', '18', 'from GZ'])) 6 # 根據_,把列表中的每個字符串進行拼接 7 print('_'.join(['tank', '18', 'from GZ']))
七、replace
1 # 七、replace:字符串替換 2 str1 = 'my name is WangWei, my age 73!' 3 print(str1) 4 str2 = str1.replace('WangWei', 'sb') 5 print(str2)
八、isdigit
1 # 八、isdigit:判斷字符串是不是數字 2 choice = input('請選擇功能[0, 1, 2]: ') 3 # 判斷用戶輸入的選擇是不是數字 4 print(choice.isdigit())
課程做業:python
寫代碼,有以下變量,請按照要求實現每一個功能:
name = " aleX"
1) 移除 name 變量對應的值兩邊的空格,並輸出處理結果
2) 判斷 name 變量對應的值是否以 "al" 開頭,並輸出結果
3) 判斷 name 變量對應的值是否以 "X" 結尾,並輸出結果
4) 將 name 變量對應的值中的 「l」 替換爲 「p」,並輸出結果
5) 將 name 變量對應的值根據 「l」 分割,並輸出結果。
6) 將 name 變量對應的值變大寫,並輸出結果
7) 將 name 變量對應的值變小寫,並輸出結果
8) 請輸出 name 變量對應的值的第 2 個字符?
9) 請輸出 name 變量對應的值的前 3 個字符?
10)請輸出 name 變量對應的值的後 2 個字符?
11)請輸出 name 變量對應的值中 「e」 所在索引位置?
12)獲取子序列,去掉最後一個字符。如: oldboy 則獲取 oldbo。
1 #寫代碼,有以下變量,請按照要求實現每一個功能: 2 name = " aleX" 3 4 #1) 移除 name 變量對應的值兩邊的空格,並輸出處理結果 5 print(name.strip()) 6 #2) 判斷 name 變量對應的值是否以 "al" 開頭,並輸出結果 7 #print('a1' in name[0:2]) 8 print(name.startswith('al')) 9 #3) 判斷 name 變量對應的值是否以 "X" 結尾,並輸出結果 10 #print('X' in name[-1]) 11 print(name.endswith('Nb')) 12 #4) 將 name 變量對應的值中的 「l」 替換爲 「p」,並輸出結果 13 print(name.replace('1','p')) 14 #5) 將 name 變量對應的值根據 「l」 分割,並輸出結果 15 print(name.split('1')) 16 #6) 將 name 變量對應的值變大寫,並輸出結果 17 print(name.upper()) 18 #7) 將 name 變量對應的值變小寫,並輸出結果 19 print(name.lower()) 20 #8) 請輸出 name 變量對應的值的第 2 個字符? 21 print(name[1]) 22 #9) 請輸出 name 變量對應的值的前 3 個字符? 23 print(name[0:3]) 24 #10)請輸出 name 變量對應的值的後 2 個字符? 25 print(name[-2:2]) 26 #11)請輸出 name 變量對應的值中 「e」 所在索引位置? 27 loc = [] 28 for i, j in enumerate(name): 29 if j == 'e': 30 loc.append(i) 31 print(loc) 32 33 #12)獲取子序列,去掉最後一個字符。如: oldboy 則獲取 oldbo。 34 print(name[:-1])