python的基本知识点
一.数据类型
1.整数
2.浮点数
3.字符串
4.布尔值:True/False
5.空值:None
二.变量
变量名必须是大小写英文、数字和_的组合,且不能以数字开头
三.常量
全部大写的变量名表示常量,python没有一种机制保证常量不能被修改.
PI = 3.14156
四.特殊的地板除 //
// 除法只取结果的整数部
如:
10 // 3
输出3
五.字符串和编码
1.编码的发展:
最开始ASCII(1个字节),存储127个字符(字母和一些符号).遇到中文或其他国家的文字时,出现了乱码,为了解决这个问题,又出现了Unicode编码(2个字节表示一个字符,特殊字符用到4个字节).但因为通常Unicode用2个字节表示一个字符,这导致了它比较占用空间,比如A,这其实可以用一个字节就能表示.于是出现了编码转化为“可变长编码”的UTF-8编码,UTF-8编码把一个Unicode字符根据不同的数字大小编码成1-6个字节,常用的英文字母被编码成1个字节,汉字通常是3个字节,只有很生僻的字符才会被编码成4-6个字节。
在计算机内存中统一用Unicode编码,但需要保存或传输的时候,就转换为utf-8编码.
2.python的字符串是Unicode编码
ord()函数获取字符的整数表示
chr()函数把编码转换为对应的字符
print(ord('夏'))
print(chr(20013))
输出:
22799
中
如果知道字符的整数编码,还可以用十六进制这么写
print(hex(ord('中')))
print(hex(ord('文')))
print('\u4e2d\u6587')
输出:
0x4e2d
0x6587
中文
3.字节
Python对bytes类型的数据用带b前缀的单引号或双引号表示:
x = b'ABC'
bytes中的每个字符只占用一个字节
4.字符和字节的相互转换
(1).字符转字节
以Unicode表示的str通过encode()方法可以编码为指定的bytes,如:
print('ABC'.encode('ascii'))
print('中文'.encode('utf-8'))
输出:
b'ABC'
b'\xe4\xb8\xad\xe6\x96\x87'
(2).字节转字符:
通过字节的decode实现
print(b'ABC'.decode('ascii'))
print(b'\xe4\xb8\xad\xe6\x96\x87'.decode('utf-8'))
输出:
ABC
中文
5.常用的len函数:
(1).计算字符串长度
(2).计算字节长度
(3).计算列表/元组等长度
如:
print(len(b'\xe4\xb8\xad\xe6\x96\x87'))
print(len(b'abc'))
print(len('ok中文'))
print(len([0, 1]))
输出:
6
3
4
2
应当始终坚持使用UTF-8编码对str和bytes进行转换
6.格式化:
(1).% 元组,如
"%s world, my name is %s, age: %d" % ('hello', 'rorshach', 14)
"%s word" % 'hello'
常见占位符:
占位符 替换内容
%d 整数
%f 浮点数
%s 字符串
%x 十六进制整数
(2).format
"{0} world, my name is {1}, age: {2}".format('hello', 'rorshach', 14)
六.判断
python使用and做与运算,使用or做或运算;对于非零数值、非空字符串、非空list等,就判断为True,否则为False
如:
a = [1]
if a:
print('right')
else:
print('wrong')
输出:
wrong
示例代码:
a = 1
b = 2 if a == 1 and b ==2:
print('a=1,b=2')
elif a == 1 or b == 2:
print('a=1 or b=2')
else:
print('no')
七.循环
两种循环:
1.for ... in
如:
for x in range(10):
print(x)
2.while:
x = 0
while x <= 9:
print(x)
x += 1
注:python没有++,--等自增/自减运算
3.break:跳出循环
4.continue:忽略本次,继续下一次循环
python的基本知识点的更多相关文章
- python遇到的知识点
python遇到的知识点,记录一下.方便学习. 文件相关操作 查了资料,关于open()的mode参数: 'r':读 'w':写 'a':追加 'r+' == r+w(可读可写,文件若不存在就报错(I ...
- Python数据分析--Pandas知识点(三)
本文主要是总结学习pandas过程中用到的函数和方法, 在此记录, 防止遗忘. Python数据分析--Pandas知识点(一) Python数据分析--Pandas知识点(二) 下面将是在知识点一, ...
- Python数据分析--Pandas知识点(二)
本文主要是总结学习pandas过程中用到的函数和方法, 在此记录, 防止遗忘. Python数据分析--Pandas知识点(一) 下面将是在知识点一的基础上继续总结. 13. 简单计算 新建一个数据表 ...
- Python 五个知识点搞定作用域
Python 五个知识点搞定作用域 1.块级作用域 想想此时运行下面的程序会有输出吗?执行会成功吗? #块级作用域 if 1 == 1: name = "lzl" print(na ...
- python基础全部知识点整理,超级全(20万字+)
目录 Python编程语言简介 https://www.cnblogs.com/hany-postq473111315/p/12256134.html Python环境搭建及中文编码 https:// ...
- Python自动化办公知识点整理汇总
知乎上有人提问:用python进行办公自动化都需要学习什么知识呢? 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手.很多已经做案例的人,却 ...
- python复习。知识点小记
1.对于单个字符的编码,Python提供了ord()函数获取字符的整数表示,chr()函数把编码转换为对应的字符: >>> ord('A') >>> ord('中' ...
- python代码零散知识点
1.用python读入csv文件 green_taxi1=pd.DataFrame(pd.read_csv('../../../../MatlabCode/data/green/green_tripd ...
- day-4 python多进程编程知识点汇总
1. python多进程简介 由于Python设计的限制(我说的是咱们常用的CPython).最多只能用满1个CPU核心.Python提供了非常好用的多进程包multiprocessing,他提供了一 ...
- day-3 python多线程编程知识点汇总
python语言以容易入门,适合应用开发,编程简洁,第三方库多等等诸多优点,并吸引广大编程爱好者.但是也存在一个被熟知的性能瓶颈:python解释器引入GIL锁以后,多CPU场景下,也不再是并行方式运 ...
随机推荐
- 洛谷P1120 小木棍 [搜索]
题目传送门 题目描述乔治有一些同样长的小木棍,他把这些木棍随意砍成几段,直到每段的长都不超过50. 现在,他想把小木棍拼接成原来的样子,但是却忘记了自己开始时有多少根木棍和它们的长度. 给出每段小木棍 ...
- Windows下的cd命令
http://blog.sina.com.cn/s/blog_5e971b850100rtta.html 首先先了解下什么是驱动器,什么是盘符. 驱动器是指通过系统格式化并带有一个驱动器号的存储区域, ...
- Struts2中使用Session
嗯,没错,过了这么长时间我还在做我的注册和登录. 登陆的部分自然是从数据库中查找响应的用户信息,然后把一个user放到session里, Action中代码如下: public String Logi ...
- 倍增LCA学习笔记
前言 "倍增",作为一种二进制拆分思想,广泛用于各中算法,如\(ST\)表,求解\(LCA\)等等...今天,我们仅讨论用该思想来求解树上两个节点的\(LCA\)(最近公共祖先 ...
- Beaglebone Black教程BeagleBone Black安装最新系统映像
Beaglebone Black教程BeagleBone Black安装最新系统映像 BeagleBone Black安装最新系统映像 Beaglebone Black虽然已经预装了Debian操作系 ...
- python搜索引擎(转)
用python如何实现一个站内搜索引擎? 先想想搜索引擎的工作流程: 1.网页搜集.用深度或者广度优先的方法搜索某个网站,保存下所有的网页,对于网页的维护采用定期搜集和增量搜集的方式. 2.建立索引库 ...
- VB查询数据库之写入数据库——机房收费系统总结(三)
在机房收费系统中,新注册的用户,更改的密码,上机下级记录,上机收费记录等等都要写入数据库,这样,后面的查询才能生效.像数据库中写入数据,首先,找到你要写入数据的数据库中的表,在表中建立新的行,让后再把 ...
- [CODECHEF]LCM
题意:询问满足$1\leq x\leq n,1\leq y\leq m$且$x,y$均无平方因子的有序对$(x,y)$的$[x,y]$之和,多组数据 以下假设$n\leq m$,设$S(n)=\fra ...
- Mobiscroll手机触屏日期选择器
最近在制作jquery mobile因要用到日历控件,突然发现Mobiscroll非常不错.于是摘下来记录. A Mobiscroll是一个用于触摸设备(Android phones.iPhon ...
- [网络安全]NTP反射型DDOS攻击PPT
给运维小组培训的NTP反射型DDOS攻击的PPT