一.数据类型

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的基本知识点的更多相关文章

  1. python遇到的知识点

    python遇到的知识点,记录一下.方便学习. 文件相关操作 查了资料,关于open()的mode参数: 'r':读 'w':写 'a':追加 'r+' == r+w(可读可写,文件若不存在就报错(I ...

  2. Python数据分析--Pandas知识点(三)

    本文主要是总结学习pandas过程中用到的函数和方法, 在此记录, 防止遗忘. Python数据分析--Pandas知识点(一) Python数据分析--Pandas知识点(二) 下面将是在知识点一, ...

  3. Python数据分析--Pandas知识点(二)

    本文主要是总结学习pandas过程中用到的函数和方法, 在此记录, 防止遗忘. Python数据分析--Pandas知识点(一) 下面将是在知识点一的基础上继续总结. 13. 简单计算 新建一个数据表 ...

  4. Python 五个知识点搞定作用域

    Python 五个知识点搞定作用域 1.块级作用域 想想此时运行下面的程序会有输出吗?执行会成功吗? #块级作用域 if 1 == 1: name = "lzl" print(na ...

  5. python基础全部知识点整理,超级全(20万字+)

    目录 Python编程语言简介 https://www.cnblogs.com/hany-postq473111315/p/12256134.html Python环境搭建及中文编码 https:// ...

  6. Python自动化办公知识点整理汇总

    知乎上有人提问:用python进行办公自动化都需要学习什么知识呢? 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手.很多已经做案例的人,却 ...

  7. python复习。知识点小记

    1.对于单个字符的编码,Python提供了ord()函数获取字符的整数表示,chr()函数把编码转换为对应的字符: >>> ord('A') >>> ord('中' ...

  8. python代码零散知识点

    1.用python读入csv文件 green_taxi1=pd.DataFrame(pd.read_csv('../../../../MatlabCode/data/green/green_tripd ...

  9. day-4 python多进程编程知识点汇总

    1. python多进程简介 由于Python设计的限制(我说的是咱们常用的CPython).最多只能用满1个CPU核心.Python提供了非常好用的多进程包multiprocessing,他提供了一 ...

  10. day-3 python多线程编程知识点汇总

    python语言以容易入门,适合应用开发,编程简洁,第三方库多等等诸多优点,并吸引广大编程爱好者.但是也存在一个被熟知的性能瓶颈:python解释器引入GIL锁以后,多CPU场景下,也不再是并行方式运 ...

随机推荐

  1. 总结分析Java常见的四种引用

    从JDK1.2版本开始,把对象的引用分为四种级别,从而使程序能更加灵活的控制对象的生命周期.这四种级别由高到低依次为:强引用.软引用.弱引用和虚引用. 1.强引用 本章前文介绍的引用实际上都是强引用, ...

  2. 设计模式-命令模式(Command Pattern)

    本文由@呆代待殆原创,转载请注明出处:http://www.cnblogs.com/coffeeSS/ 命令模式简述 命令模式的主要作用是将“行为请求者”和“行为实现者”解耦.举个例子,假如我们现在要 ...

  3. Python中sorted函数的用法(转)

    [Python] sorted函数 我们需要对List.Dict进行排序,Python提供了两个方法 对给定的List L进行排序, 方法1.用List的成员函数sort进行排序,在本地进行排序,不返 ...

  4. Struts2中的设计模式

    http://blog.csdn.net/significantfrank/article/details/7712053 1. Command Pattern 基本定义: 把Command(Requ ...

  5. CSS 笔记——文本字体

    5. 文本字体 -> 文本 (1)text-indent 基本语法 text-indent : length 语法取值 length : 百分比数字 | 由浮点数字和单位标识符组成的长度值,允许 ...

  6. JZYZOJ1378 [noi2002]M号机器人 欧拉函数

    http://172.20.6.3/Problem_Show.asp?id=1378日常懒得看题目怪不得语文差,要好好读题目了,欧拉函数大概是数论里最友好的了,不用解方程不用转换过来转换过去只需要简单 ...

  7. BZOJ 2789 letters(树状数组)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=2789 [题目大意] 给出两个字符串,通过A字符串相邻之间字符的交换得到B字符串, 求最 ...

  8. 【2-SAT】POJ3678-Katu Puzzle

    [题目大意] 给出有向图G(V, E),每条边(a,b)有一个值c(c=0或1)和运算符op,问能否找到这一张有向图,满足所有的a op b=c? [思路] 显然是2-SAT.不过要注意一定,如a a ...

  9. (原创)Stanford Machine Learning (by Andrew NG) --- (week 5) Neural Networks Learning

    本栏目内容来自Andrew NG老师的公开课:https://class.coursera.org/ml/class/index 一般而言, 人工神经网络与经典计算方法相比并非优越, 只有当常规方法解 ...

  10. 原生js实现图片轮播思路分析

    一.复习原生js实现图片轮播 1.要点 自动轮播 点击小圆圈按钮,显示相应图片 点击左右箭头,实现向前向后轮播图片 2.实现思路 <div id="container"> ...