第一章

1、Python环境的构建、Pycharm的下载安装

1、https://www.python.org/downloads/windows/下载安装Python环境

2、https://www.jetbrains.com/pycharm/download/#section=windows下载安装Pycharm

2、Print函数

1、Print函数基本语法Print(),参数可以为整数,小数,字符串

2、输出到文件中

fp=open('D:/Python/text/text.txt','a+')
print('hello world',file=fp)
fp.close()
# 在D盘新建一个txt文件然后将hello world输入进文件中

3、逗号分隔不换行输出

3、转义字符

\n 换行 newline

print('hello\nworld')

hello
world

\r 回车 return

print('hello\rworld')

world

\t 水平制表位 table 是否重开制表位取决于之前是否占满制表位

print('hello\tworld')
print('helloooo\tworld')

hello world
helloooo world

\b 退格 backspace

print('hello\bworld')

hellworld

双反斜杠 反斜杠

print('http:\\\\www.baidu.com')

反斜杠加单双引号 单双引号

语句前加r或R 转义字符不起作用(最后字符不能是反斜杠)

第二章

1、二进制与字符编码

8bit(位)=1byte(字节)

1024 byte=1KB

1024MB=1GB

1024GB=1TB

二进制 8位表示2的8次方256种状态

ASCII表128个符号还剩余128个

A十进制 65=二进制 01000001

Unicode统一字符(包含了全世界的字符)

print(chr(0b100111001011000))#0b二进制 承
print(ord('乘'))#十进制20056

2、标识符与保留字

保留字:有些单词被python赋予了意思,对象名不能为该单词

['False', 'None', 'True', 'peg_parser', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

标识符:对象名

可以为字母、数字、下划线

不能以数字开头

不能为保留字

严格区分带小写

3、变量

变量:内存中带标签的盒子

name=’123‘

变量三部分

标识:表示对象所储存的内存地址,可使用内置函数id(obj)来获取

类型:表示的是对象的数据类型,使用内置函数type(obj)来获取

值:对象存储的具体数据可用print(obj)打印输出

name='maliya'
print(name)
print('标识',id(name))
print('类型',type(name))
print('值',name)

标识 2296802826736
类型 <class 'str'>
值 maliya

变量的赋值

image-20211114145153037

name='mayiya'
print(name)
name='chuliubing'
print(name)

结果

mayiya
chuliubing

4、数据类型

常用的数据类型

整型 int

image-20211114144215120

浮点型 float

image-20211114144249738

a=3.14159
print(a,type(a))
n1=1.1
n2=2.2
n3=2.1
print(n1+n2)
print(n1+n3)
from decimal import Decimal
print(Decimal('1.1')+Decimal('2.2'))

结果

3.14159 <class 'float'>
3.3000000000000003

3.2

3.3

计算器存储使用二进制计算不精确

布尔类型 bool

image-20211114144341146

True=1

False=0

字符串类型 str

image-20211114144358027

5、数据转换类型

image-20211114144414695

str()函数

image-20211114144456451

int()函数

image-20211114144512739

字符串为整数串可直接转换

浮点类型转成整数类型会舍掉小数

字符串为小数串不可转换

布尔类型可转换True=1 False=0

float()函数

image-20211114144529220

文字类无法转换

整数转换末尾加.0

6、注释

image-20211114144716697

加#coding:gbk 中文编码申明

默认 utf-8

第三章

1、输入函数input

(1) 介绍

image-20211114145228834

(2) 基本使用

image-20211114145248361

input函数输入的内容是字符串类型

(3) 练习

#要求从键盘录入两个整数并求和
p1=input('请输入第一个数')
p2=input('请输入第二个数')
print(int(p1)+int(p2))

2、运算符

(1) 算数运算符

标准算术运算符

加(+) 减(-) 乘(*) 除(/) 整除(//)

取余算数运算符

%

幂运算符

**

各类运算符

image-20211114145447193

一正一负取整取余方法

取整方法:一正一负向下取整

向下取整:取比自己小的第一个整数

向上取整:取比自己大的第一个整数

#一正一负的取整
print(9//4) #2
print(-9//-4) #2
print(9//-4) #-3
print(-9//4) #-3
# 取整向下取整

取余方法:公式法、余数=被除数-除数*商(整除运算结果,向下取整)

#一正一负的取余方法
#余数=被除数-除数*商(整除运算结果)
print(9%-4)  #-3   9-(-4)*(-3)=-3
print(-9%4)  #3    -9-4*(-3)=3

(2) 赋值运算符

image-20211114145606739

执行顺序

=赋值符号

从右到左计算

链式赋值

a=b=c=20

参数赋值

a=20
a+=30 #等价a=a+30
print(a)
a-=10 #等价a=a-10
print(a)
a*=2 #等价a=a*2
print(a)
a/=3 #等价a=a/3
print(a)
print(type(a))
a//=2 #等价a=a//2
print(a)
print(type(a))
a%=3 #等价a=a%/2
print(a)
print(type(a))

运行结果

50
40
80
26.666666666666668
<class 'float'>
13.0
<class 'float'>
1.0
<class 'float'>

支持系列解包赋值

要求等号两边变量数与值数量相同

a,b,c=20,30,40

等价

a=20

b=30

c=40

交换变量的值

a,b,c=20,30,40
print(a,b,c)
print('===========交换值===========')
print(a,b)
a,b=b,a
print(a,b)
#不需要中间变量来交换值

(3) 比较运算符

比较运算符的结果为bool类型

各种运算符 ==等于 >=大于等于 <=小于等于 <小于 >大于

变量由三部分组成,标识 类型,值

比较运算符 比较的是值

比较标识(id)为is 和 is not

(4) 布尔运算符

image-20211105134736169

and(且) or(或) not(非) in(在里面)not in(不在里面)

# bool 运算符
s='helloworld'
print('w' in s) #True
print('f' in s) #False
print('w' not in s) #False
print('f' not in s) #True

(5) 位运算符

image-20211105163959346

转换成二进制计算(8位运算)

4&8=0

0 0 0 0 0 1 0 0 4
0 0 0 0 1 0 0 0 8
0 0 0 0 0 0 0 0 0

同1为1,其余为0

4|8=12

0 0 0 0 0 1 0 0 4
0 0 0 0 1 0 0 0 8
0 0 0 0 1 1 0 0 12

同0为0其余为1

左移位预算<<

4<<1=8 向左移动一位

高位溢出 0 0 0 0 0 1 0 0 4 左移位
0 0 0 0 0 1 0 0 0 8 相当于×2
低位补0

右移位预算>>

4>>1=2 向右移动一位

0 0 0 0 0 1 0 0 低位截断 4 右移位
0 0 0 0 0 0 1 0 0 2 相当于÷2
高位补0
print(4&8) ## 按位与同为1时结果为1
print(4|8) ## 按位或同为0时结果为0
print(4<<1) ## 向左移动一个位置
print(4>>1) ## 向右移动一个位置

结果

0
12
8
2

(6) 运算符的优先级

image-20211114142713863

(有括号计算括号) 算术运算 位运算 比较运算 布尔运算 赋值运算

幂运算→乘除取整取余→加减→移位运算→位与运算→位或运算→大于小于等于不等于→与→或→赋值

更多文章请关注《万象专栏》