决战Python之巅——第一模块总结
前言
本篇将对第一模块中的知识点做一个小总结。
知识总结
1.编程语言
编程语言分为三大类:
1.机器语言
2.汇编语言
3.高级语言
其中,机器语言与汇编语言是最底层语言,运行速度快,但开发效率低;高级语言开发效率高,但运行速度相对较慢,而高级语言又分为编译型、解释型两种。
2.Python的输入输出与注释
Python与用户交互的输入、输出语言是:
输入:input()
输出:print()
注释分为两种,单行注释与多行注释。单行注释直接跟在代码后或另起一行,以 # 开头;多行注释使用三对单引号或者三对双引号,自己选择。
3.基本数据类型
Python有三大基本数据类型:
int,整型;(注意:Python 3 中将不再区分long int 和 int)
string,字符串;
bool,布尔值,只有True 和 False两个值。
另外还有float,Python中小数默认有6位。
4.格式化输出
使用占位符:
%s:string型
%d:整型
%f:浮点型
5.运算符
与基本数学一样,Python中也有+ - * /(加减乘除),另外还有:
% :取模,返回余数;
** :幂,返回x的y次幂
//:取整,除法返回整数部分
还有>、<、=等一些关系运算,就不在详述。
6.流程控制(考点)
单流程:
if 条件1:代码
双流程:
if 条件1:代码1
else:代码2
多流程:
if 条件1:代码1
elif 条件2:代码2
......
else:代码
多流程中你需要多少分支就可以写多少分支,另外if…elif…else中还可以嵌套if…elif…else。
7.循环
(1)while…else…
while 条件:代码1
else:代码2
只有当条件为真,即条件为True时,才会进入while循环执行代码1,直至遇到break或者条件为False才会跳出while循环(注意:一定不要写死循环)。
while中也可以用continue,continue只用来跳过当前循环,不执行continue之后的代码,直接执行下一次循环。
只有当while循环正常结束,而不是通过break结束,才会执行else中的代码,切记。
(2)for循环(考点)
for循环是一个遍历循环,即:
for i in x:代码
假设x中有n个元素,就将执行代码n次。
8.编码(考点)
根据历史事件,编码从远到近,依次是:
其中,ascii码占1个字节,GBK占2个字节,UNICODE占2个字节,UTF-8分成3种:其中的ascii码占1个字节,欧洲语言占2个字节,东亚语言占3个字节。
在计算机内存中,统一使用Unicode编码,当需要保存到硬盘或者需要传输的时候,就转换为UTF-8编码。
如果想把UTF-8转为GBK,流程如下:
先将UTF-8解码为Uniclde:
s1 = s.decode('UTF-8')
然后编码为GBK:
s2 = s1.encode('GBK')
9.其它数据类型
Python中还有其他的数据类型:
(1)列表(list)
l = [] # 定义一个空列表
l = [1,2,3]
l = ['a','b','c']
注:列表中也可添加其他数据类型,如列表中嵌套列表。
列表操作 | 函数 |
---|---|
追加 | append |
索引 | index |
计数 | count |
切片 | [x:y:z]注1 |
插入 | insert |
删除 | pop注2、remove、del注3 |
正序 | sort |
倒序 | reverse |
扩展 | extend |
复制 | cpoy注4 |
注1:x起始位置,y结束位置,z步长(默认为1),注意Python中永远顾头不顾尾。
注2:删除最后一个
注3:用法为:
l = [1,2,3]
del l[0]
注4:浅层复制,具体请看深浅Copy。
(2)字符串(string)
注意,字符串是有序、不可变的。
(3)元组(tuple)
与列表相似,但一旦创建便不可修改。
初始化:
l = (1,2,3,4)
功能:
索引:index
计数:count
切片(同list)
注意:这里有个坑,如果你初始化了:s = (1),接着你type(s),你会发现返回的是int而不是tuple,s=(1,)才是tuple。
(4)字典(dict)
字典是一种key-value的无序的数据类型。其中key必须是不可变数据类型,且必须唯一。
字典可存放多个值,可修改,可不唯一。
字典操作 | 函数 |
---|---|
查找 | in注1 |
获取 | get注2 |
获取所有value | values |
获取所有key | keys |
插入 | setdefault注3 |
更新 | update注4 |
items注5 |
注1:判断字典的key中是否有当前值,有则返回True,反之返回False
注2:获取有两种方式,但另一种方式在遇到字典中没有当前key的时候会报错,get则会返回None
注3:setdefault:插入一堆key-value,加入字典中有该key就不插入且返回对应的value
注4:a.update(b),b中的key在a中存在,a中该key对应的value变为b中该key的value;b中的key在a中不存在,则a中新增一对这样的key-value
注5:获取当前字典的所有key,value,并返回一个list:[(key1,value1),(key2,value2),(key2,value2),(key3,value3)…]
(5)集合(set)
集合是一个无序的,不重复的数据集合。
集合三特征:
1.确定性
2.互异性
3.无序性
集合操作 | 函数 |
---|---|
添加 | add注1 |
更新 | update注2 |
删除 | discard、pop注3 |
清空 | clear |
复制 | copy |
注1:重复的元素不会被添加,只能添加不可变数据
注2:把多个值加入到集合
注3:discard集合中没有该元素不会报错,pop随机删,没有会报错
集合关系测试:
关系测试 | 符号 |
---|---|
交集 | & |
差集 | - |
并集 | ^ |
10.哈希
11.二进制、八进制、十进制、十六进制
之间的转换较好的方法是都转为二进制,再转其他进制。
2018.12.09补充:
先补充一下考核时遇到的问题及老师的答复:
有这样一道题:
#!/usr/bin/env python 3 这句话的作用是什么?
刚看到这道题我一脸懵逼。。这句话哪来的?是不是超纲了?
…其实没有,Pycharm文件头就有这一句话,只是我一直没有注意:这句话的意思是,告诉系统执行这个脚本时,调用Python 3解释器。整体过程是,首先让系统到环境变量(即env)中找Python 3安装路径,找到后调用Python 3解释器。环境变量,我的理解是一个存储库,里面存放都是一些安装路径,比如Python 3的,怎么查看本机的env呢(下面以windows为例):
右击“我的电脑”——属性——高级系统设置:
高级Tab页——环境变量:
双击Path:
就能打开编辑环境变量界面。
这里还有另外一句话:
#!/usr/bin/python 3
这句话的意思是直接到usr/bin文件夹下找Python 3解释器,是一个绝对路径,如果你的Python 3没有装在这个文件夹下,就不会找到。
所以,还是推荐使用第一句。
决战Python之巅——第一模块总结相关推荐
- 决战Python之巅(十五)-面向对象(找名词、加属性、连关系)
面向对象(找名词.加属性.连关系) 知识回顾 引言 面向过程 VS 面向对象 面向过程 面向对象 面向对象初识 类的相关 对象的相关 对象之间的交互 类命名空间与对象.实例的命名空间 初识面向对象小结 ...
- 决战Python之巅(一)
目录 知识回顾 编程语言 (介绍之前,给大家介绍一部电影,卷福演的<模仿游戏>,讲的是"计算机之父"-艾伦·图灵的故事,有兴趣的可以去看看.) 1.机器语言 2.汇编语 ...
- 决战Python之巅(十)
前言 昨天将函数前半部分看完了,这里稍微做一下总结. 知识回顾 函数定义 函数的定义很简单,如下: 函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需要调用这个函数名即可 ...
- 决战Python之巅(十二)
前言 从这一章开始我们就要开始学习进阶的函数知识. 函数中比较重要的就是装饰器.迭代器.生成器这三样,我将分开3篇介绍. 知识回顾 装饰器 在讲装饰器之前,我们先讲一点补充知识. 命名空间 名称到对象 ...
- 决战Python之巅(二十)-MySql
MySql 概述 数据库(DataBase) 数据库管理系统 数据库服务器.数据管理系统.数据库.表与记录的关系(重点) SQL MySql使用 用户管理 用户和IP 授权管理 所有权限 授权对象 特 ...
- 第一阶段:Python开发基础 day18 模块的使用(三)
目录 上节课内容回顾 一.numpy模块 一.numpy简介 二.为什么用numpy 三.创建numpy数组 五.获取numpy数组的行列数 六.切割numpy数组 七.numpy数组元素替换 八.n ...
- python学习第一模块练习
#!/usr/bin/python# -*- coding:utf-8 -*- ### 第一套题# # 1. 分别解释"=","==","+=&quo ...
- 第四章:Python项目组织结构-第一节:包、模块以及__init__.py文件
部分参考:菜鸟教程 文章目录 思维导图 一:Python项目组织结构 (1)Python项目组织结构 (2)包与模块的作用 (3)包与模块的名字 二:导入模块 (1)import (2)from... ...
- Python实战之logging模块使用详解
用Python写代码的时候,在想看的地方写个print xx 就能在控制台上显示打印信息,这样子就能知道它是什么了,但是当我需要看大量的地方或者在一个文件中查看的时候,这时候print就不大方便了,所 ...
最新文章
- 蓝牙mesh网络技术的亮点
- 构建一个运行在Azure虚拟机上的MySQL Spring Boot应用程序
- 专注,专注,还是专注
- 多个vue项目合并成一个_集美们,快看如何一步将多个PDF合并成一个PDF
- boost::scoped_ptr相关的测试程序
- MySQL5.6主从复制(读写分离)方案
- python selenium 点击开始按钮,python selenium-点击页面而不使用next按钮
- 单源最短路径——Dijkstra代码实现
- python中ttk详解_Python 中的Property 动态属性和特性详解
- Android 屏幕(View)坐标系统
- vmware workstation 12 永久激活码
- Postman强大的接口的前置、后置处理教程
- Android小技巧 自动关闭输入法软键盘
- 【面试题 - mysql】进阶篇 - 索引
- Mac下的spotlight无法搜索本地资源的解决办法
- stm32正常运行流程图_stm32学习笔记之问题总结
- 卷积神经网络输出结果都一样
- android中键盘锁的问题
- 某连续函数的不连续导函数图像绘制(matlab实现)
- 30大优秀logo设计详解
热门文章
- 新计算机显卡声音大,刚买回来的电脑主机噪音大怎么办
- 什么待办软件可以设置闹钟来提醒办事
- UI设计——Figma新手教学
- git初级使用教程(Git常用基本命令汇总)
- 迪蒙网贷系统:互联网金融陷入“黑客围城”之困
- 【专利学习】基于区块链的审计方法和系统
- 我的物联网大学【第14章】:生意还是事业?
- 【转】恶意代码分析-工具收集
- 全球免费公共【 DNS 】解析服务器 IP 地址列表推荐 【解决无法上网+加速+防劫持】
- java计算机毕业设计旅游管理系统源码+系统+数据库+lw文档+mybatis+运行部署