入門python知識點總結以及15道題的解題思路分析-創(chuàng)新互聯(lián)

知識點總結

創(chuàng)新互聯(lián)建站主打移動網(wǎng)站、成都網(wǎng)站建設、網(wǎng)站設計、網(wǎng)站改版、網(wǎng)絡推廣、網(wǎng)站維護、空間域名、等互聯(lián)網(wǎng)信息服務,為各行業(yè)提供服務。在技術實力的保障下,我們?yōu)榭蛻舫兄Z穩(wěn)定,放心的服務,根據(jù)網(wǎng)站的內(nèi)容與功能再決定采用什么樣的設計。最后,要實現(xiàn)符合網(wǎng)站需求的內(nèi)容、功能與設計,我們還會規(guī)劃穩(wěn)定安全的技術方案做保障。

一、序列

操作符

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為步長的元素子序列

函數(shù)

len(s)              返回序列的長度
min(s)              返回序列的最小值
max(s)              返回序列的大值
s.index或s.Index(x,i,j)      索引從i到j-1中第一次出現(xiàn)x的位置
s.count(x)          返回x在s中出現(xiàn)的次數(shù)
ls[i] = x           替換列表中第i元素為x
ls[i:j:k] =lt           用lt代替從i到j-1步長為k的元素
ls += lt            把lt元素加入ls中
ls*= n              把ls的元素復制n次  

二、列表

函數(shù)

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出現(xiàn)的第一個元素x刪除
ls.reverse()                將列表ls的元素反轉(zhuǎn)

三、元組

與列表類似,但是內(nèi)容不可添加或者刪除,用()表示。

四、字符串

str.lower()
或者str.upper()               把元素全部大寫\小寫
str.split(x)                用x把str的元素分隔開
str.count(x)                返回x在str中出現(xiàn)的次數(shù)
str.replace(x,y)            用y替換x
str.center(width,x)         將str根據(jù)寬度width居中,x填充左右部分
str.strip(x)                刪除str首尾的x
x.join(str)             在除了最后1個元素的其他元素后增加一個str  

五、15道例題

1、用階梯形狀打印出九九乘法表

解題思想

九九乘法表需要把兩個變量相乘,可考慮用for if循環(huán)
由于每次print都會自帶一個換行符,所以可以考慮用end去除換行符

代碼

for i in range(1,4):
 for j in range(1,i+1):
    print(i,'*',j,'=',i*j, sep='', end='  ')
print('')

2、打印字符串"甲乙丙丁午己庚辛壬癸"的所有字符,要求每個字符占據(jù)一行

解題思想

這樣依次打印字符串,考慮用 for循環(huán)。

代碼

for c in "甲乙丙丁午己庚辛壬癸":
   print(c)

3、循環(huán)十次在同一行內(nèi)打印10個’X’

解題思想

考慮while循環(huán),同一行用end函數(shù)換掉末尾的換行符

代碼

i = 0
while i<10:
    print('*', end='')
    i += 1

4、計算績點

若分數(shù)小于60,則GPA=0

若分數(shù)score>=60, 則 GPA=(score-50)/10

解題思想

需要分情況,所以可用if函數(shù)

代碼

def GPA(score):
  GPA = 0
   if score>=60:
     GPA = (score-50)/10
 return GPA

輸入分數(shù)即可得到GPA

5、計算不大于100的所有自然數(shù)的和

解題思路

for循環(huán)里面加入疊加的變量

代碼

x = 0
for i in range(1,101):
    x+=i
print(x)

6、將字符串‘pythonlil’變成大寫形式

解題思想

可用upper實現(xiàn)

代碼

x = 'pythonlil'.upper()
print(x)

7、用單個for,循環(huán)十次在同一行內(nèi)打印十個數(shù)字’0 1 2 3 4 5 6 7 8 9 ’

字符之間用單個空格分隔

解題思想

十個數(shù)字可以用range函數(shù)實現(xiàn),通過for 循環(huán)解題

代碼

for i in range(10):
    print(i, end=' ')
print('')

8、循環(huán)十次在同一行內(nèi)打印10個’=’

解題思想

看到循環(huán)應該反應用for或者while來解決

代碼

for i in range(10):
    print('=', end='')
print('')

9、打印下列圖案:12個等號,每行4個

解題思想

打印重復等號用for或者while實現(xiàn),換行可以用if實現(xiàn)

代碼

for i in range(1,13):
    print('=', end='')
    if(i%4==0):
        print('\n', end='')

10、用雙層for循環(huán)打印九九乘法表

解題思路

限定用兩個for 一個for控制第一個變量 另一個for控制第二個變量 換行用end函數(shù)實現(xiàn)

代碼

for i in range(1,4):
    for j in range(1,i+1):
        print(i,'*',j,'=',i*j, sep='', end='  ')
    print('')

11、異常處理

假設在一大堆日期數(shù)據(jù)中出現(xiàn)多個錯誤日期2019/2/29 除去這些不正確的行

解題思想

需要鎖定29這個不存在二月的號數(shù),需要用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

12、數(shù)據(jù)分類

假設有包含1到12月的日期列表linelist 將每個月的日期分別放在不同的csv文件里面

解題思想

需要鎖定月份 所以要把月份分隔開來作為分類依據(jù)

代碼(設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)              

13、比較[1,3,6,8,5,2,6]的大小并按照從大到小排序

解題思想

sort函數(shù)可以按照從小到大的順序排序,題目要的是從大到小,用reverse = True可實現(xiàn)降序

代碼

[1,3,6,8,5,2,6].sort(reverse=True)

14、輸入一個阿拉伯整數(shù),四位數(shù)字一組,間隔以逗號

解題思想

需要判斷什么時候達到四位并進行分隔,定義一個函數(shù) n即為輸入的整數(shù)

代碼

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

使用print(wan(n))就可以得到結果

15、 創(chuàng)建一個1.txt文件 輸入’靜夜思‘

解題思想

創(chuàng)建py文件可以直接用with open函數(shù) 輸入文字用write()實現(xiàn)

代碼

with open('1.txt','w+') as f:
    f.write('靜夜思')

以上就是知識點的總結和15道例題的解析

網(wǎng)站名稱:入門python知識點總結以及15道題的解題思路分析-創(chuàng)新互聯(lián)
鏈接URL:http://muchs.cn/article14/djiode.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供App開發(fā)、自適應網(wǎng)站、軟件開發(fā)、網(wǎng)站營銷、網(wǎng)站導航、服務器托管

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設網(wǎng)站維護公司