python基础知识总结

一、自学感受

学完之后,,,感觉脑子里全是乱的,单词这么多,都要分不清什么时候该用什么,他到底属于哪一个数据类型里的函数,,,,,,

所以,我想着把笔记整理一下,方便自己和需要的人查看。

二、pycharm常用快捷键

识别菜鸟和高手的最简单的方法就是看他对于编译器玩的六不六,所以掌握基本的快捷键是必须的。

注释快捷键: CtrI + /                                             代码格式化:CtrI+ Alt + L

文件重命名: Shift + F6                                        拷贝文件路径: CtrI + Shift + C

运行程序: Shift + F10                                          调试程序: Shift + F9(debug模式)

添加补字符: Alt +鼠标左键                                   光标在行开头: CtrI + [

光标在行结尾:CtrI+ ]                                            选中当前行:Ctrl + Shift + [

取消选中: Ctrl + Shift + ]                                     选择剪贴板内容插入: CtrI + Shift + Insert

撤销: Ctrl+ Z                                                        恢复: Ctrl + Shift + Z

复制当前行: CtrI + D                                            删除当前行: Ctrl + Y

移动当前行: Shift + Alt +↑↓                                 代码补全: Ctrl+ Alt +空格

单步执行: F8

三、字符串常见操作

命名两个str类型的str1和str2,temp。

1str1.find(str2,start = 0,end = len(str1) )

用于查找str2在str1中的索引值,如果没有,返回-1。(从左往右)

rfind用法一样,只不过是从右往左查找。

index,和   find()差不多,没找到会报异常。

rindex,和    rfind()差不多,没找到会报异常。

2.str1.count(str2,start = 0,end = len(str1)) 

统计 在str1的start 到  end 中str2出现的次数。

3.str1.replace(temp,str2,count)

把在str1中的 字符串 temp替换为 str2   count 次。

4.str1.capitalize()

字符串的第一个字母大写。

5.str1.title()

字符串中的每一个单词的首字母大写。

6.str1.lower()

把字符串中的字母全部变为小写。

7.str1.upper()

把字符串中的字母全部变为大写。

8.str1.strip()

删除字符串两边空白字符。

rstrip()     删除字符串右边空白字符。

lstrip()     删除字符串左边空白字符。

9.str1.splitlines()

str1中如果包含 ('\r', '\r\n', \n') ,将其分开储存在列表中。

10.str3 = str1.join(str2)

将str2的每一个字符用字符串str1连接起来。

11.str1.split(ch)

将str1以字符串为划分点分成几部分储存到列表中。

四、运算符优先级

序号 运算符
1 **
2 ~    +     -(一元加减号)
3 *     /     %     //
4 +      -
5 >>    <<
6 &
7 ^       |
8 <=    <    >   >   =
9 ==   !=
10 =     %=    /=     //=    -= +=     *=   **=
11 is    is not
12 in    not in
13 not    or    and

五、列表常用函数

1.list2 =  list1[a:b]

将列表中a到b-1的元素放入list2 列表中。

2.list1.revers()

反转列表。

3.list1.append(list2)

将list2整个列表追加到list1中。

4.list1.extend(list2)

将list2列表中的元素追加到list1中。

5.list1.insert(a,chr)

将chr元素插入到list1中的第a个位置中。

6.list1.remove(chr)

将list1中的chr删除。

7.list1.pop(a)

按照索引值将list中的值删除。

8.list1[a,b] = []

将a到b-1元素删除。

9.cnt = list1.count(chr)

统计chr元素在list1中出现的次数。

10 list2 = list1.copy()

复制list1中的元素到list2中,(不是指向同一块内存)

list2 = list1  (这个就会指向同一块内存)

10.list1.sort()

升序排序

11.list1.sort(reverse = True)

降序排序

12.sorted(list1)

对列表进行排序,生成新列表,不修改原列表。元组也适用。

13.max(list1)      min(list1)

返回列表中的最大最小值

14.sum(list1)

返回数字列表数的总和。

六、字典常用函数

1.dict1 = dict(keys = values,.........)

字典的创建,也可以用花括号直接创建。

2.dict1 = dict.fromkeys([keys,........] ,     这里填默认值   )

初始化字典

3.dict1.get(chr,ch)

在字典中获取chr对应的值,如果没有,默认返回指定的ch.

也可以用dict1[chr] 的方法获取,没有返回指定值的东西。

4.字典的遍历

for key in employee:
v = employee[key]
print(v) for k,v in employee.items():
print(k,v)

5.字典的更新(有则更新,无则新增)

dict1[chr] = v          单个更新

dict1.update(keys = value,..........)    多个更新

6.字典的删除

dict1.pop(chr)       删除指定的key 和 value

dict1.popitem()     删除最后一个key 和 value

7.dict1.clear()

清空字典

8。获取字典的视图

dict1,keys()   代表获取所有的键

dict1.values()   代表获取所有的值

dict1.items()      代表获取所有的键值对

以其中的一个为例:

ks = dict1,keys() ,ks会随着dict1中内容的变化而变化,不是固定不变的。

9.dict1.setdefault(key,value)

默认初始化,若已经存在key了,就会忽略这个语句,无就添加。

10.字符串格式化

# 老版本的字符串格式化
emp_str = "姓名:%(name)s,评级:%(grade)s,入职时间:%(hiredate)s" %emp1 # 新版本的字符串格式化
emp_str1 = "姓名:{name},评级:{grade},入职时间:{hiredate}".format_map(emp1)

七、元组注意事项

如果元组只有一个元素时,必须在这个元素后增加逗号说明这是一个元组。
元组只能访问,不能改变其 值,除非包含了列表。

八、集合常用函数

集合是没有value值的字典。

创建时和字典差不多,只是创建空集合时要用set()。

注意:集合不支持按照索引提取数据  用in 判断是否在其中,for循环遍历集合。

集合的一些函数:

1.求交集

c1 = set1.intersection(set2)    获取交集,新建集合。

set1.intersection_update(set2)      更新原有集合。

2.求并集

c1 = set1.union(set2)      获取并集,去重,新建集合。

3.求差集

c1 = set1,difference(set2)    获取set1在set2中不存在的部分,新建集合。

c1 = set1.symmetric_difference(set2)    获取双向差集,新建集合。

差集也有update

set1.symmetric_difference_update(set2)    获取双向差集。更新set1.       

4.set1 == set2 

判断两集合中的元素是否都相同。

5.set1.issubset(set2)

判断set1是否是set2的子集。

6.set1.issuperset(set2)

判断set1是否是set2的父集。

7.set1.isdisjoint(set2)

判断set1是否和set2无重复元素。

8.set1.add(ch)

更新数据,一次只能更新一个。

9.set1.update(ch1,ch2)

更新数据,一次能更新多个。

10.set1.remove(ch)

删除数据,如果没有ch,会报错。

11.set1.discard(ch)

删除数据,如果没有ch,不会报错,直接忽略。 

九、生成式

生成式很简单,说一下语法就行生成式语法: [被追加的数据 循环语句 循环或者判断语句]|{}

十、常用高阶函数

1.lambda 函数的用法

def f(n):
return n % 2 == 0 print(f(2)) print(bool(lambda n: n % 2 == 0))

输出后都为 True 。

说明这两个函数是等价的,后者更加简洁,也是lambda函数的好处。

2.filter(function, iterable)

function -- 判断函数。
iterable -- 可迭代对象。

filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回一个迭代器对象,如果要转换为列表,可以使用 list() 来转换。

我们用range数组和lambda函数进行讲解。

#输出0~19 个数中的奇数
print(list(filter(lambda n: n % 2, range(0, 20))))
#得到 [1, 3, 5, 7, 9, 11, 13, 15, 17, 19]

3.reduce(function, iterable[, initializer])

用之前要引入函数

from functools import reduce

function -- 函数,有两个参数
iterable -- 可迭代对象
initializer -- 可选,初始参数

from functools import reduce

print(reduce(lambda x, y: x * y, range(1, 21)))
#得到 20!

函数将一个数据集合(链表,元组等)中的所有数据进行下列操作:用传给 reduce 中的函数 function(有两个参数)先对集合中的第 1、2 个元素进行操作,得到的结果再与第三个数据用 function 函数运算,最后得到一个结果。

如果只是求和,用内置的sum(list1) 也可以得到答案。

4.map(function, iterable, ...)

function -- 函数

iterable -- 一个或多个序列

#计算各个数的立方

print(list(map(lambda n: n**3, range(1, 11))))
#输出[1, 8, 27, 64, 125, 216, 343, 512, 729, 1000]

如果有哪里写错了,希望大佬指点一下,蟹蟹!!

【python----发轫之始】【基础知识总结】的更多相关文章

  1. Python数据挖掘——基础知识

    Python数据挖掘——基础知识 数据挖掘又称从数据中 挖掘知识.知识提取.数据/模式分析 即为:从数据中发现知识的过程 1.数据清理 (消除噪声,删除不一致数据) 2.数据集成 (多种数据源 组合在 ...

  2. Python 面向对象基础知识

    面向对象基础知识 1.什么是面向对象编程? - 以前使用函数 - 类 + 对象 2.什么是类什么是对象,又有什么关系? class 类: def 函数1(): pass def 函数2(): pass ...

  3. python 爬虫基础知识一

    网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本. 网络爬虫必备知识点 1. Python基础知识2. P ...

  4. Python:基础知识

    python是一种解释型.面向对象的.带有动态语义的高级程序语言. 一.下载安装 官网下载地址:https://www.python.org/downloads 下载后执行安装文件,按照默认安装顺序安 ...

  5. Python学习-基础知识-2

    目录 Python基础知识2 一.二进制 二.文字编码-基础 为什么要有文字编码? 有哪些编码格式? 如何解决不同国家不兼容的编码格式? unicode编码格式的缺点 如何既能全球通用还可以规避uni ...

  6. 第2章 Python编程基础知识 第2.1节 简单的Python数据类型、变量赋值及输入输出

    第三节 简单的Python数据类型.变量赋值及输入输出 Python是一门解释性语言,它的执行依赖于Python提供的执行环境,前面一章介绍了Python环境安装.WINDOWS系列Python编辑和 ...

  7. Python入门 ---基础知识

    Python入门不知道这些你还是承早放弃吧!真的 Python 简介 Python 是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言. Python 的设计具有很强的可读性,相比其他语言 ...

  8. 10分钟学会Python函数基础知识

    看完本文大概需要8分钟,看完后,仔细看下代码,认真回一下,函数基本知识就OK了.最好还是把代码敲一下. 一.函数基础 简单地说,一个函数就是一组Python语句的组合,它们可以在程序中运行一次或多次运 ...

  9. python编码基础知识

    http://www.javaeye.com/topic/560229 一 预备知识 字符集1, 常用字符集分类ASCII及其扩展字符集作用:表语英语及西欧语言.位数:ASCII是用7位表示的,能表示 ...

  10. Python 爬虫基础知识

    requests Python标准库中提供了:urllib.urllib2.httplib等模块以供Http请求,但是,它的 API 太渣了.它是为另一个时代.另一个互联网所创建的.它需要巨量的工作, ...

随机推荐

  1. Jetson AGX Xavier刷机

    1. 准备一台电脑做主机(host),运行Ubuntu系统,我用的是虚拟机,运行的是Ubuntu 18.04系统. 2. 主机更换apt-get源,参见https://www.cnblogs.com/ ...

  2. 如何在github上递交高质量的pull request

    开源的一大乐趣就是任何人都可以参与其中.试想下一个流行的项目就有你贡献的代码,是一件多么爽的事情!你可以帮助项目健康发展,添加你希望添加的功能,以及修复你发现的BUG. 作为全球最大的开源社区GitH ...

  3. 全面解析Java语言 Java技能优化集锦

    通用篇 "通用篇"讨论的问题适合于大多数Java应用. 不用new关键词创建类的实例 用new关键词创建类的实例时,构造函数链中的所有构造函数都会被自动调用.但如果一个对象实现了C ...

  4. springBoot(6):web开发-模板引擎jsp

    一.新建工程 注意新建的工程下没有webapp目录eclipse下会自动创建webapp目录这里我们需要自动创建一个webapp目录并创建WEB-INF. 对ServletInitializer.ja ...

  5. 12c DG broker DMON自动重启过程分析

    一.知识点 1.强烈建议大家管理dataguard使用broker. 2.broker的日志要知道在哪里,会看日志是学习的第一步. 3.体系结构需要看官方文档. 二.测试过程 1.查看DMON进程 & ...

  6. 熟透vue手机购物商城开发的重要性

    带手机验证码登陆, 带全套购物车系统 带数据库 前后端分离开发 带定位用户功能 数据库代码为本地制作好了 带支付宝支付系统 带django开发服务器接口教程 地址:   https://www.dua ...

  7. Mybatis详解系列(五)--Mybatis Generator和全注解风格的MyBatis3DynamicSql

    简介 Mybatis Generator (MBG) 是 Mybatis 官方提供的代码生成器,通过它可以在项目中自动生成简单的 CRUD 方法,甚至"无所不能"的高级条件查询(M ...

  8. WebStorm 2019 3.3 安装及破解教程附汉化教程

    WebStorm2019 3.3 安装及破解教程附加汉化教程 安装包及破解补丁 链接: https://pan.baidu.com/s/19ATTAW3Tsm0huIJSqYChTw 提取码:1ei7 ...

  9. codeforce 1311 C. Perform the Combo 前缀和

    You want to perform the combo on your opponent in one popular fighting game. The combo is the string ...

  10. 图论--最小环--Floyd模板

    #include <iostream> #include <algorithm> #include <cstdio> #include <cstring> ...