先看知識點總結python
1、序列
操做符
x in s 若是x是列表s的元素,返回True,不然False
s + t 鏈接兩個序列s和t
s*n或者n*s 將序列s複製n次
s[i] 返回s中第i元素
s[i:j]或s[i:j: k] 切片,返回序列s中第i到j-1以k爲步長的元素子序列
12345
函數
len(s) 返回序列的長度
min(s) 返回序列的最小值
max(s) 返回序列的最大值
s.index或s.Index(x,i,j) 索引從i到j-1中第一次出現x的位置
s.count(x) 返回x在s中出現的次數
ls[i] = x 替換列表中第i元素爲x
ls[i:j:k] =lt 用lt代替從i到j-1步長爲k的元素
ls += lt 把lt元素加入ls中
ls*= n 把ls的元素複製n次
123456789
另外不少人在學習Python的過程當中,每每由於沒有好的教程或者沒人指導從而致使本身容易放棄,爲此我建了個Python交流.裙 :一久武其而而流一思(數字的諧音)轉換下能夠找到了,裏面有最新Python教程項目可拿,不懂的問題多跟裏面的人交流,都會解決哦!
2、列表
函數
ls.append(x) 把x加入列表ls中
ls.clear() 刪除ls中全部元素
ls.copy() 生成一個新列表並賦予ls的元素
ls.insert(i.x) 在第i位置家加入元素x
ls.pop(i) 將列表ls中第i元素去除並刪除其元素
ls.remove(x) 將列表ls出現的第一個元素x刪除
ls.reverse() 將列表ls的元素反轉
1234567
3、元組
與列表相似,可是內容不可添加或者刪除,用()表示。
4、字符串
str.lower()
或者str.upper() 把元素所有大寫\小寫
str.split(x) 用x把str的元素分隔開
str.count(x) 返回x在str中出現的次數
str.replace(x,y) 用y替換x
str.center(width,x) 將str根據寬度width居中,x填充左右部分
str.strip(x) 刪除str首尾的x
x.join(str) 在除了最後1個元素的其餘元素後增長一個str
12345678
5、15道例題
一、用階梯形狀打印出九九乘法表
解題思想
九九乘法表須要把兩個變量相乘,可考慮用for if循環
因爲每次print都會自帶一個換行符,因此能夠考慮用end去除換行符
代碼
for i in range(1,4):
for j in range(1,i+1):
print(i,'*',j,'=',i*j, sep='', end=' ')
print('')
1234
二、打印字符串"甲乙丙丁午己庚辛壬癸"的全部字符,要求每一個字符佔據一行
解題思想
這樣依次打印字符串,考慮用 for循環。
代碼
for c in "甲乙丙丁午己庚辛壬癸":
print(c)
12
三、循環十次在同一行內打印10個’X’
解題思想
考慮while循環,同一行用end函數換掉末尾的換行符
代碼
i = 0
while i<10:
print('*', end='')
i += 1
1234
四、計算績點
若分數小於60,則GPA=0
若分數score>=60, 則 GPA=(score-50)/10
解題思想
須要分狀況,因此可用if函數
代碼
def GPA(score):
GPA = 0
if score>=60:
GPA = (score-50)/10
return GPA
12345
輸入分數便可獲得GPA
五、計算不大於100的全部天然數的和
解題思路
for循環裏面加入疊加的變量
代碼
x = 0
for i in range(1,101):
x+=i
print(x)
1234
六、將字符串‘pythonlil’變成大寫形式
解題思想
可用upper實現
代碼
x = 'pythonlil'.upper()
print(x)
12
七、用單個for,循環十次在同一行內打印十個數字’0 1 2 3 4 5 6 7 8 9 ’
字符之間用單個空格分隔
解題思想
十個數字能夠用range函數實現,經過for 循環解題
代碼
for i in range(10):
print(i, end=' ')
print('')
123
八、循環十次在同一行內打印10個’=’
解題思想
看到循環應該反應用for或者while來解決
代碼
for i in range(10):
print('=', end='')
print('')
123
九、打印下列圖案:12個等號,每行4個
解題思想
打印重複等號用for或者while實現,換行能夠用if實現
代碼
for i in range(1,13):
print('=', end='')
if(i%4==0):
print('\n', end='')
1234
十、用雙層for循環打印九九乘法表
解題思路
限定用兩個for 一個for控制第一個變量 另外一個for控制第二個變量 換行用end函數實現
代碼
for i in range(1,4):
for j in range(1,i+1):
print(i,'*',j,'=',i*j, sep='', end=' ')
print('')
1234
十一、異常處理
假設在一大堆日期數據中出現多個錯誤日期2019/2/29 除去這些不正確的行
解題思想
須要鎖定29這個不存在二月的號數,須要用split分隔
代碼(設data是日期列表)
for line in data1:
linelist = line.split(',')
linelist1 = linelist[1].split(' ')
linelist2 = linelist1[0].split('-')
linelist3 = list(linelist2)
if linelist3[1] == '02' and linelist3[2] == '29'
del line
1234567
十二、數據分類
假設有包含1到12月的日期列表linelist 將每月的日期分別放在不一樣的csv文件裏面
解題思想
須要鎖定月份 因此要把月份分隔開來做爲分類依據
代碼(設data是日期列表)
for line in data:
linelist = line.split(',')
linelist1 = linelist[1].split(' ')
linelist2 = linelist1[0].split('-')
if linelist2[1]=='01':
with open('mon1.csv','a+')as f1:
f1.write(line)
elif linelist2[1]=='02':
with open('mon2.csv','a+')as f2:
f2.write(line)
elif linelist2[1]=='03':
with open('mon3.csv','a+')as f3:
f3.write(line)
elif linelist2[1]=='04':
with open('mon4.csv','a+')as f4:
f4.write(line)
elif linelist2[1]=='05':
with open('mon5.csv','a+')as f5:
f5.write(line)
elif linelist2[1]=='06':
with open('mon6.csv','a+')as f6:
f6.write(line)
elif linelist2[1]=='07':
with open('mon7.csv','a+')as f7:
f7.write(line)
elif linelist2[1]=='08':
with open('mon8.csv','a+')as f8:
f8.write(line)
12345678910111213141516171819202122232425262728
1三、比較[1,3,6,8,5,2,6]的大小並按照從大到小排序
解題思想
sort函數能夠按照從小到大的順序排序,題目要的是從大到小,用reverse = True可實現降序
代碼
[1,3,6,8,5,2,6].sort(reverse=True)
1
1四、輸入一個阿拉伯整數,四位數字一組,間隔以逗號
解題思想
須要判斷何時達到四位並進行分隔,定義一個函數 n即爲輸入的整數
代碼
def wan(n, sep=','):
n = str(n)
L = len(n)
lst = []
b = L%4
if b>0:
lst = [n[:b],]
for i in range(b,L,4):
lst.append(n[i:i+4])
n = sep.join(lst)
return n
1234567891011
使用print(wan(n))就能夠獲得結果
1五、 建立一個1.txt文件 輸入’靜夜思‘
解題思想
建立py文件能夠直接用with open函數 輸入文字用write()實現
代碼
with open('1.txt','w+') as f:
f.write('靜夜思')
以上就是知識點的總結和15道例題的解析—另外不少人在學習Python的過程當中,每每由於沒有好的教程或者沒人指導從而致使本身容易放棄,爲此我建了個Python交流.裙 :一久武其而而流一思(數字的諧音)轉換下能夠找到了,裏面有最新Python教程項目可拿,不懂的問題多跟裏面的人交流,都會解決哦!網絡
本文的文字及圖片來源於網絡加上本身的想法,僅供學習、交流使用,不具備任何商業用途,版權歸原做者全部,若有問題請及時聯繫咱們以做處理。
app