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

知识点总结

一、序列

操作符

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次  

二、列表

函数

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

三、元组

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

四、字符串

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  

五、15道例题

1、用阶梯形状打印出九九乘法表

解题思想

九九乘法表需要把两个变量相乘,可考虑用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(‘‘)

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

解题思想

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

代码

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

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

解题思想

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

代码

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

4、计算绩点

若分数小于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

5、计算不大于100的所有自然数的和

解题思路

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

代码

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

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

解题思想

可用upper实现

代码

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

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

字符之间用单个空格分隔

解题思想

十个数字可以用range函数实现,通过for 循环解题

代码

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

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

解题思想

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

代码

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

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

解题思想

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

代码

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

10、用双层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(‘‘)

11、异常处理

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

12、数据分类

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

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

解题思想

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

代码

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

14、输入一个阿拉伯整数,四位数字一组,间隔以逗号

解题思想

需要判断什么时候达到四位并进行分隔,定义一个函数 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))就可以得到结果

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

解题思想

创建py文件可以直接用with open函数 输入文字用write()实现

代码

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

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

原文地址:https://blog.51cto.com/14646124/2462310

时间: 2024-10-08 17:00:45

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

python知识点总结以及15道题的解析

先看知识点总结 一.序列操作符x in s 如果x是列表s的元素,返回True,否则Falses + t 连接两个序列s和ts*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中出现的次数l

【思路整理】六道题的一些思路分析总结。。

噗...这几道题题很简单..实现起来也挺简单的..但是... 虽然最终的solution很简单..但是如何想出这个solution和如何实现这个问题(实现中的细节)也是要考虑的.... 恩..在这里说一说拿到一道题的分析历程吧顺带总结一下(?).. ------------------------------------------------------- POJ 2337 Catenyms 欧拉回路 Description:给你n个单词,让每个单词的最后一个字母恰好等于下一个单词的第一个字母

python 入门基础知识点总结

最近在群里,同学们对于python基础课程到底要学什么,一直不能很好的确定,那么我在这里针对python基础知识的几个阶段,做一个总结,新手朋友们,可以根据这个来进行学习,那么由于我是做web开发的,所以会从web的角度去涉及. 第一阶段知识---基础语法 (1) python的数据结构的认识: python所有数据结构的认识 字符串的使用以及字符串的相关方法 列表的使用以及列表的相关方法 字典的使用以及字典的相关方法 元组的使用以及远足的相关方法 (2)逻辑判断的使用 if else if e

程序员带你十天快速入门Python,玩转电脑软件开发(二)

关注今日头条-做全栈攻城狮,学代码也要读书,爱全栈,更爱生活.提供程序员技术及生活指导干货. 如果你真想学习,请评论学过的每篇文章,记录学习的痕迹. 请把所有教程文章中所提及的代码,最少敲写三遍,达到熟悉的效果. 声明:本次教程主要适用于已经习得一门编程语言的程序员.想要学习第二门语言.有梦想,立志做全栈攻城狮的你 如果是小白,也可以学习本教程.不过可能有些困难.如有问题在文章下方进行讨论.或者添加QQ群538742639.群马上就满了,名额不多. 上节课主要讲解了以下内容: 为什么学习Pyth

小甲鱼零基础入门PYTHON

 000.愉快的开始 00:17:37 ☆  001.我和Python的第一次亲密接触 00:13:26 ★  002.用Python设计第一个游戏 00:24:00 ★  003.小插曲之变量和字符串 00:19:04 ★  004.改进我们的小游戏 00:26:31 ★  005.闲聊之Python的数据类型 00:18:41 ★  006.Pyhon之常用操作符 00:16:31    007.了不起的分支和循环 00:16:30    008.了不起的分支和循环2 00:12:09  

如何快速入门Python学习呢?

根据TIOBE最新排名 ,Python已超越C#,与Java,C,C++一起成为全球前4大最流行语言,成为互联网时代最受欢迎的编程语言,越来越多的人选择Python,那么如何快速入门Python学习呢?首先你要了解Python,我们从以下几个方面来说. 学完python前景会咋样 其实我个人是很看好python未来的就业前景的,因为我认识太多的工程师都已经在学python,很多都是月收入大几万的 一项专业调查显示,75%的受访者将Python视为他们的主要开发语言,反之,其他25%受访者则将其视

千行代码入门Python

这个是从网上找到的一份快速入门python的极简教程,大概一千行左右,个人觉得不错,特此收藏以备后用. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69

十分钟快速入门 Python,看完即会,不用收藏!

本文以 Eric Matthes 的<Python编程:从入门到实践>为基础,以有一定其他语言经验的程序员视角,对书中内容提炼总结,化繁为简,将这本书的精髓融合成一篇10分钟能读完的文章. 读完本篇文章后,可对 Python 语言特性.编码风格有一定了解,并可写出简单的 Python 程序. 100?多位经验丰富的开发者参与,在 Github 上获得了近?1000?个?star?的开源项目想了解下吗?项目地址:github.com/cachecats/c- 一.安装与运行 各个系统的 Pyth

从零起步 系统入门Python爬虫工程师

课程目录及大纲: 第1章 从零开始 系统入门python爬虫工程师-课程导学 获取课程资料链接:点击这里获取 这是一门专门为爬虫初学者打造的教程,从零起步的系统化教程,课程内容从理论到实践,一层一层深入讲解,尤其是课程实战环节:一步一步带你进行多场景项目实践 ,让你能够举一反三从容面对以后的数据抓取问题,最后关于就业部分,重点,难点,针对性讲解,轻松应对面试,最终达到就业水准.... 1-1 从零开始 系统入门python爬虫工程师-课程导学 试看第2章 彻底解决让人头疼的环境搭建问题 视频教程