一、python基础语法
1.注释
注释是代码中对代码进行解释和说明的文本内容,不会影响程序的功能和执行
1)单行注释:
在一行文字的前面加# (快捷键ctrl+/)
2)多行注释:
将注释内容写在三个双引号或者三个单引号里面(但是一般使用双引号)
#单行注释
"""
多行注释1
多行注释2
"""
2.语句
红色波浪号表示报错,灰色波浪号表示格式不对,绿色波浪号表示英文单词不对
1.一条语句占一行,语句结束后不用加分号。
2.如果一行要显示多条语句,语句之间需要加分号
3.如果一条语句需要多行显示,可以在需要换行处添加\ (\不能破坏数据本身)
3.缩进
python中一行代码的开头不能随便加缩进(空格或者制表符)
python语法要求必须有缩进的位置一定要加缩进
4.标识符
标识符是用来命名用的。一般是给变量命名、函数命名或者类命名...
标识符规则:
所有标识符都必须是由字母、数字和下划线组成;数字不能开头。
注意:
python2.x以后,标识符中可以出现中文、日文韩语等符号;但是实际开发不建议使用
5.关键字(保留字)
关键字就是在python中有特殊功能和特殊意义的标识符。
python中的关键字:
import keyword
print(keyword.kwlist)
['False', 'None', 'True', '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']
6.常见数据类型和数据
1) 数字数据:
整型(int) 33, 66, -10
浮点型(float) 12.3, 34.0, -12.0
2) 字符串(str):
用双引号或者单引号将文本数据引起来(一般使用单引号)
3)布尔(bool):
只有True和False两个值,True代表真/肯定,False代表假/否定
4)列表(list)、元组(tuple)、集合(set)、字典(dict)、函数(function)等...
5)类型转换:
类型名(数据) -> 将括号中的数据转换成指定的类型并返回
7.print和input
1)print函数
输出函数,在控制台打印print后面括号中的内容
2)input函数 -
输入函数,获取从控制台输入的内容(输入回车的时候输入就完成)
input('提示信息')
print('hello world!')
value = input('请输入年龄:')
print('输入的年龄为:',value)
注意:不管从键盘上输入的内容是什么,input返回的结果的类型都是字符串类型
二、进制的转换
计算机只能存储和处理二进制数据
int类型 - 包含所有的整数,整数可以表示为十进制、二进制、八进制、十六进制
1)十进制
a.基数:0,1,2,3,4,5,6,7,8,9
b.进位:逢10进1
c.位权:123 = 100+20+3 = 110^2 + 210^1 + 310^0
19.8 = 110^1 + 910^0 + 810^(-1)
d.表示方式:直接写
e.进制转换:
# 10进制
num1 = 10
print(num1)
print('转10进制:',0b10110,0o64,0xaf)
2)二进制
a.基数:0,1,
b.进位:逢2进1 1 10 11 100 101 110 111
c.位权:111(2) = 12^2 + 12^1 + 1*2^0 = 7(10)
d.表示方式:数字前加前缀0b/0B
e.进制转换:bin()
# 2进制
num2= 0b1011
print(num2)
print('转2进制:', bin(200),bin(0o64),bin(0xaf))
3)八进制
a.基数:0,1,2,3,4,5,6,7
b.进位:逢8进1 5 6 7 10 11 12...17 20 21
c.位权:111(8) = 18^2 + 18^1 + 1*8^0 = 73(10)
d.表示方式:数字前加前缀0o/0O
e.进制转换:oct()
# 8进制
num3= 0o417 #4*8^2 + 1*8^1 + 7*8^0
print(num3)
print('转8进制:', oct(200),oct(0b10110),oct(0xaf))
4)十六进制
a.基数:0,1,2,3,4,5,6,7,8,9,a(10),b(11),c(12),d(13),e(14),f(15)(大小写都可以)
b.进位:逢16进1
c.位权:111(16) = 116^2 + 116^1 + 116^0 = 273(10)
1f(16) = 116^1 + 15*16^0 = 31(10)
d.表示方式:数字前加前缀0x/0X
e.进制转换:hex()
# 16进制
num4= 0x5f #5*16 + 15
print(num4)
print('转16进制:', hex(200),hex(0b10110),hex(0o76))
三、原码反码和补码
计算机存数据的时候,只能存数字,而且存的是二进制的补码
计算机的单位
位(bit)
1字节(byte) = 8bit
1kb = 1024byte
1M = 1024kb
1G = 1024M
1T = 1024G
注意:正数的原码、反码和补码一样
1.原码 = 符号位(0表示正,1表示负) + 真值(数字转换成二进制的值)
10 -> 1010(真值) ->
10的原码: 00000000 00000000 00000000 00001010
-10的原码:10000000 00000000 00000000 00001010
2.负数的反码:符号位不变,其它位取反(0变1,1变0)
10的反码:00000000 00000000 00000000 00001010
-10的反码:11111111 11111111 11111111 11110101
3.负数的补码:反码加1
10的补码:00000000 00000000 00000000 00001010
-10的补码:11111111 11111111 11111111 11110110
4.计算机负数采用补码的原因:
计算机没有减法器,负数采用原码进行加法运算的时候结果不对,采用补码结果才对
四、运算符
python支持的运算符:数学运算符、比较运算符、逻辑运算符、位运算、赋值运算符
1.数学运算符:
加+ ,减- ,乘* ,除/ , 幂** , 取整//, 取余%
1)+,-,*,/ 和数学中功能一致,没有任何区别
2)%求余数
print(10 % 3) # 求10除以3的余数
# a.判断一个数是否能被另外一个数整除
print(21%7)
# b.判断一个数的奇偶性:让数字对2取余,看结果是0还是1
print(23 % 2, 1012 % 2, 1096 % 2)
# c.获取一个数的最后几位数
num = 123
print(num % 10) # 取一个数的个位数
print(num % 100) # 取一个数的个位数和十位数
3)// - 求商,取商的整数部分
print(10 // 3) # 3
print(9.36 // 3) # 3.0
# a.获取一个数的最开始几位数
num = 123
print(num//100)
print(num//10)
# b.获取十位数上的数字
print(num//10%10)
print(num%10//10)
4)** - 求次方值
print(2**3)
print(16 ** 0.5)
print(8 ** (1/3))
2.比较运算符:>, <, >=, <=, ==, !=,
所有运算符的结果都是布尔值(不是True就是False)
1)<, >, >=, <=和数学中相应的运算是一致的
print(100 > 10) # True
print(100 < 10) # False
print(100 <= 10) # False
print(100 >= 10) # True
### 2) == (判断是否相等) / != (判断是否不相等)
```python
print(100 == 100) # True
print(100 == 20 + 80) # True
print(100 != 100) # False
注意:python中比较大小的时候可以像数学一样连写表示范围
print(1 <= 10 <= 100)
网友评论