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为步长的元素子序列
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教程项目可拿,不懂的问题多跟里面的人交流,都会解决哦!
二、列表
函数
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
三、元组
与列表类似,但是内容不可添加或者删除,用()表示。
四、字符串
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
五、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('')
1234
2、打印字符串"甲乙丙丁午己庚辛壬癸"的所有字符,要求每个字符占据一行
解题思想
这样依次打印字符串,考虑用 for循环。
代码
for c in "甲乙丙丁午己庚辛壬癸":
print(c)
12
3、循环十次在同一行内打印10个’X’
解题思想
考虑while循环,同一行用end函数换掉末尾的换行符
代码
i = 0
while i<10:
print('*', end='')
i += 1
1234
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
12345
输入分数即可得到GPA
5、计算不大于100的所有自然数的和
解题思路
for循环里面加入叠加的变量
代码
x = 0
for i in range(1,101):
x+=i
print(x)
1234
6、将字符串‘pythonlil’变成大写形式
解题思想
可用upper实现
代码
x = 'pythonlil'.upper()
print(x)
12
7、用单个for,循环十次在同一行内打印十个数字’0 1 2 3 4 5 6 7 8 9 ’
字符之间用单个空格分隔
解题思想
十个数字可以用range函数实现,通过for 循环解题
代码
for i in range(10):
print(i, end=' ')
print('')
123
8、循环十次在同一行内打印10个’=’
解题思想
看到循环应该反应用for或者while来解决
代码
for i in range(10):
print('=', end='')
print('')
123
9、打印下列图案:12个等号,每行4个
解题思想
打印重复等号用for或者while实现,换行可以用if实现
代码
for i in range(1,13):
print('=', end='')
if(i%4==0):
print('\n', end='')
1234
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('')
1234
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
1234567
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)
12345678910111213141516171819202122232425262728
13、比较[1,3,6,8,5,2,6]的大小并按照从大到小排序
解题思想
sort函数可以按照从小到大的顺序排序,题目要的是从大到小,用reverse = True可实现降序
代码
[1,3,6,8,5,2,6].sort(reverse=True)
1
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
1234567891011
使用print(wan(n))就可以得到结果
15、 创建一个1.txt文件 输入’静夜思‘
解题思想
创建py文件可以直接用with open函数 输入文字用write()实现
代码
with open('1.txt','w+') as f:
f.write('静夜思')
以上就是知识点的总结和15道例题的解析—另外很多人在学习Python的过程中,往往因为没有好的教程或者没人指导从而导致自己容易放弃,为此我建了个Python交流.裙 :一久武其而而流一思(数字的谐音)转换下可以找到了,里面有最新Python教程项目可拿,不懂的问题多跟里面的人交流,都会解决哦!
本文的文字及图片来源于网络加上自己的想法,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。
python知识点总结以及15道题的解析的更多相关文章
- Python知识点汇总
*/ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:text.cpp * 作者:常轩 * 微信公众号:Worldhe ...
- python 之模块之 xml.dom.minidom解析xml
# -*- coding: cp936 -*- #python 27 #xiaodeng #python 之模块之 xml.dom.minidom解析xml #http://www.cnblogs.c ...
- Python学习笔记(15)- os\os.path 操作文件
程序1 编写一个程序,统计当前目录下每个文件类型的文件数,程序实现如图: import os def countfile(path): dict1 = {} # 定义一个字典 all_files = ...
- python知识点, float不能用 != 判断
python知识点链接:https://github.com/taizilongxu/interview_python 搜索:python最佳事件 书单:http://lucida.me/blog/d ...
- Python中sort和sorted函数代码解析
Python中sort和sorted函数代码解析 本文研究的主要是Python中sort和sorted函数的相关内容,具体如下. 一.sort函数 sort函数是序列的内部函数 函数原型: L.sor ...
- python 知识点补充
python 知识点补充 简明 python 教程 r 或 R 来指定一个 原始(Raw) 字符串 Python 是强(Strongly)面向对象的,因为所有的一切都是对象, 包括数字.字符串与 函数 ...
- python全栈开发 * 15知识点汇总 * 180621
#15 函数二 与 匿名函数1.dir() # 查看内置属性,将对象所有方法名放在另一个列表中.dic={"水果":"香蕉",'蔬菜':"土豆&quo ...
- Python知识点复习
一.列表1.创建一个文件birthday.py,假设你要祝某人生日快乐!首先将年龄存储在变量age中,将姓名存储在变量name中,让程序输出类似“阿明,23岁生日快乐!” 例如:假设你要祝某人生日快乐 ...
- 精通 Oracle+Python,第 3 部分:数据解析
进行数据解析的理由不计其数,相关的工具和技巧也同样如此.但是,当您需要用这些数据做一些新的事情时,即使有“合适的”工具可能也是不够的.这一担心对于异类数据源的集成同样存在.用来做这项工作的合适工具迟早 ...
随机推荐
- Axure licensee key 8~9-转
转:https://7rp.cn/34 AxureRP v9.0.0.3646 正式版 — 亲测可用 Licensee: jasmine Key: ATocOwMG75ijKpF0OEDSHQ3UZQ ...
- drf-jwt手动签发与校验,drf小组件:过滤、筛选、排序、分页
复习 """ 频率组件:限制接口的访问频率 源码分析:初始化方法.判断是否有权限方法.计数等待时间方法 自定义频率组件: class MyThrottle(SimpleR ...
- 【资源分享】Half-Life(半条命)中英版
*----------------------------------------------[下载区]----------------------------------------------* ...
- VSCode的安装和使用
VSCode的安装和使用 1.先到下载地址选择适合自己系统的VSCode安装软件 https://code.visualstudio.com/#alt-downloads 以上分别是Windows , ...
- MongoDB - 将查询结果保存到excel文件中
import pymongo import re client = pymongo.MongoClient('127.0.0.1', 27017) db_name = 'Trade' db = cli ...
- JS高级---实例对象和构造函数之间的关系
实例对象和构造函数之间的关系: 1. 实例对象是通过构造函数来创建的---创建的过程叫实例化 2. 如何判断对象是不是这个数据类型? 1) 通过构造器的方式 实例对象.构造器==构造函数 ...
- 8.5-Day1T3--Asm.Def 的一秒
题目大意 略... (吐槽这题面...让我毫无阅读兴趣) 题解 首先要求出在以两条斜线为新坐标轴下,每个点的坐标 那么....按x先排序 再求y的最长上升子序列 复杂度O(nlogn)吧 记得开lon ...
- eclipse修改快捷键
eclipse修改快捷键 ctrl + shift + l查看快捷键 window -> preferences -> 搜索keys 鼠标点击以下五个表头,可以按照内容搜索 示例,选中Bi ...
- Python实现重命名一个文件夹下的图片
在网上查了一下python实现的图片重命名,工作中刚好用一下. # -*- coding:utf8 -*- import os path = '新建文件夹 (2)/' filelist = os.li ...
- 【C语言】计算N名同学的某门功课的平均成绩
分析: 循环输入number只童鞋的成绩,累加为sum,最后输出sum/number即可! 代码: #include<stdio.h> int main() { , score;//sco ...