一、认识print函数
print函数是一个输出函数,功能是在控制台输出括号中的内容,但是并非是原样输出。
print('Hello World!')
二、python的基本语法
1.注释
注释是对代码行中的部分代码进行解释和说明的文本内容,不影响程序的功能和执行。
1)单行注释,使用“#”,后面跟注释内容(快捷键:Ctrl+/)
#单行注释
2)多行注释,使用三对单引号或者双引号将注释内容放在其中(一般使用双引号)
# 双引号注释
"""
第一行
第二行
第三行
...
"""
# 单引号注释
'''
第一行
第二行
...
'''
2.语句
1)如果一条语句独占一行,则后面不需要加 ; 结尾;
num = 12
2)如果多条语句写在一行,则需要在每句后面加 ; 结尾,改行的最后一句不需要加 ; 结尾;
a = 1; b = 3; print(a+b)
3)如果一行的语句过于长,则可以使用 / 作为分隔,然后在 / 后面敲回车符(Enter),但是注意 / 不能破化数据本身。
num = 10
num2 = 1829839284 + num * \
34344 - 3798798 + 809839 / 273982789 ** 1 - \
(2378 - 23989) + (29 - 0)
print(num2)
3.缩进indent
1)python中的一行代码不能随便缩进否则会报错
print('没有缩进')
print('缩进了')
2)需要缩进的地方必须缩进,否则也会报错
num = 2
if num > 1:
print('没缩进,应该缩进4个空格,否则报错')
4.标识符
标识符是用来命名的,主要是为变量命名、函数命名或为类命名...
标识符的命名规则:所有标识符都必须用字符、数字或者下划线来命名,且数字不能放在开头。
注意:自python2.x以后,标识符可以出现中文、日韩语等符号,但在实际开发中不建议使用。
5.关键字(保留字)
关键字就是python中有特殊意义或者特殊功能的标识符。
# 查看关键字的方法
import keyword
print(keyword.kwlist)
6.常见数据类型和数据
1)数字类型:整型int(20,-13...)、浮点型float(20.3,-33.75...)
2)字符串类型:用双引号或者单引号将文本数据引起来,str('abc','12')
3)布尔值bool:只有True和False两个值,True代表真/肯定,False代表假/否定
4)列表(list)、集合(set)、字典(dict)、函数(function)等...
5)类型转换: 类型名(数据) -> 将类型转换成指定的类型,如:
int('123')
7.print函数和input函数
print函数 - 输出函数,在控制台打印出print括号里面的内容
input函数 - 输入函数,获取从控制平台输入的内容(敲回车键结束),input(提示信息)
print('abc')
age = input('请输入年龄:')
# 用type函数获取age的数据类型,b并打印出来
print(age)
print(type(age))
注意:input所获取的内容都是字符串类型
三、进制转换
计算机只能储存和处理二进制数据
int类型 - 包含所有的整数,整数可以是二进制、八进制、十进制和十六进制。
二进制
- 基数:0,1
- 进位:逢二进一
- 位权:2,如 1011(2) = 1*2^3+ 0*2^2 + 1*2^1 +1*2^0 = 11(10)
- 表现方式:在二进制前加前缀0b或者0B,如,0b11
- 转换:bin(数据)
八进制
- 基数:0,1,2,3,4,5,6,7
- 进位:逢八进一
- 位权:8,如 217(8) = 2*8^2 + 1*8^1 + 7*8^0 = 143(10)
- 表现方式:在八进制前加前缀0o或者0O,如,0o27
- 转换:oct(数据)
十进制
- 基数:0,1,2,3,4,5,6,7,8,9
- 进位:逢十进一
- 位权:10,如 123(10) = 1*10^2 + 2*10^1 + 3*10^0
- 表现方式:直接写出来,如
print(11)
- 转换:直接打印即可,如
print(0b1011)
十六进制
- 基数:0,1,2,3,4,5,6,7,8,9,a/A,b/B,c/C,d/D,e/E,f/F
- 进位:逢十六进一
- 位权:16,如 1f(16) = 1*16^1 + 15*16^0 = 31(10)
- 表现方式:在十六进制前加前缀0x或者0X,如,0x1f
- 转换:hex(数据)
四、原码和反码
计算机存数据的时候,只能存数字,而且存的是二进制的补码
注意:整数的原码、反码和补码都是原码本身
1.原码
原码 = 符号位(0为负, 1为正) + 真值(数字转换成二进制数的值)
如:10 -> 1010(真值) -> 01010
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.负数的补码
负数的补码:负数的反码加一
如:
10的补码: 00000000 00000000 00000000 00001010
-10的补码: 11111111 11111111 11111111 11110110
4.计算机负数采用补码的原因
计算机储存数据采用补码的原因是计算机没有减法器,采用原码进行减法运算的结果是不正确的,采用补码计算得出来的结果才是正确的。
如,2-3
采用原码计算
2的原码:00000000 00000000 00000000 00000010
-3的原码:10000000 00000000 00000000 00000011
2-3的计算结果:10000000 00000000 00000000 00000101 = -5
结果为10进制的-5,显然答案不正确
采用补码计算
2的补码:00000000 00000000 00000000 00000010
-3的补码:11111111 11111111 11111111 11111101
2-3的计算结果:11111111 11111111 11111111 11111111(补码) =
10000000 00000000 00000000 00000001(原码) = -1
采用补码计算的结果正确
五、运算符
python支持的运算符:数学运算符、比较运算符、逻辑运算符、位运算、赋值运算符
1.数学运算符+、 -、 *、 /、 %、 //、 **
1)+(求和)、-(求差)、(求积)、/(求商)
+、-、、/ 和数学中的+、-、x、÷ 一模一样
print(10 + 20)
print(10 - 20)
print(10 * 20)
print(10 / 20)
2)% - 求余数
作用:
- 判断一个数是否能被另一个数整除
print(10 % 3) # 求10除以3的余数, 结果为1
- 判断一个数的奇偶性,让数字对2取余,结果为0即为偶数,为1即为奇数
print(23 % 2, 101 % 2, 109 % 2) # 运行结果: 1 1 1
print(230 % 2, 1012 % 2, 1096 % 2) # 运行结果:0 0 0
- 获取一个数的最后几位
num = 123; print(num%100) # 取一个数的后两位数
num = 123; print(num%100) # 取一个数的后两位数
3)// - 求商,取商的整数部分
print(5//2) # 2
print(9.36 // 3) #3.0
4)** -求次方值
print(2**3) #8
print(16 ** 0.5) # 4.0
print(8 ** (1/3)) # 2.0
2.比较运算符: >, <, >=, <=, ==, !==
所有比较运算符的结果都是布尔值,不是True就是False
1)>, <, >=, <= 和数学中相应的比较运算符一样
print(100 > 10) # True
print(100 < 10) # False
2)== 判断是否相等 / != (判断是否不相等)
print(100 == 100) # True
print(100 == 20 + 80) # True
print(100 != 100) # False
print(10 != 100) # True
注意:python中的比较大小的时候可以像数学一样连写表示范围
如, num = 2; print(1<num<5) # True
小知识:
字节运算
1字节(byte) = 8bit
1kb = 1024byte
1M = 1024kb
1G = 1024M
1T = 1024 G