入门python知识点总结以及15道题的解题思路分析

知识点总结python

1、序列app

操做符ide

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为步长的元素子序列

函数函数

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次

2、列表code

函数排序

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的元素反转

3、元组索引

与列表相似,可是内容不可添加或者删除,用()表示。ip

4、字符串rem

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

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('')

二、打印字符串"甲乙丙丁午己庚辛壬癸"的全部字符,要求每一个字符占据一行

解题思想

这样依次打印字符串,考虑用 for循环。

代码

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

三、循环十次在同一行内打印10个’X’

解题思想

考虑while循环,同一行用end函数换掉末尾的换行符

代码

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

四、计算绩点

若分数小于60,则GPA=0

若分数score>=60, 则 GPA=(score-50)/10

解题思想

须要分状况,因此可用if函数

代码

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

输入分数便可获得GPA

五、计算不大于100的全部天然数的和

解题思路

for循环里面加入叠加的变量

代码

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

六、将字符串‘pythonlil’变成大写形式

解题思想

可用upper实现

代码

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

七、用单个for,循环十次在同一行内打印十个数字’0 1 2 3 4 5 6 7 8 9 ’

字符之间用单个空格分隔

解题思想

十个数字能够用range函数实现,经过for 循环解题

代码

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

八、循环十次在同一行内打印10个’=’

解题思想

看到循环应该反应用for或者while来解决

代码

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

九、打印下列图案:12个等号,每行4个

解题思想

打印重复等号用for或者while实现,换行能够用if实现

代码

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

十、用双层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('')

十一、异常处理

假设在一大堆日期数据中出现多个错误日期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

十二、数据分类

假设有包含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)

1三、比较[1,3,6,8,5,2,6]的大小并按照从大到小排序

解题思想

sort函数能够按照从小到大的顺序排序,题目要的是从大到小,用reverse = True可实现降序

代码

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

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

使用print(wan(n))就能够获得结果

1五、 建立一个1.txt文件 输入’静夜思‘

解题思想

建立py文件能够直接用with open函数 输入文字用write()实现

代码

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

以上就是知识点的总结和15道例题的解析