一 开场白
hello word
python
print('hello word')
二 部分快捷键
注释的快捷键 ctrl+? 添加或取消一行注释
ctrl+s 保存
ctrl+c ctrl+v ctrl+n(跳转到类)
ctrl+f(搜索)
ctrl+r(替换)
ctrl+z
ctrl+shift+z(反撤销)
ctrl+a 全选
ctrl+x 剪切
选择有效部分 配合使用shift
tab 补充代码
三 基础语法及基操
1.注释:
程序中的说明文字,只是程序的说明 不会被执行。
单行注释 在文字的前面加 “ #” 号。
多行注释 使用双引号 " " or ' '。通常使用 “ ”。
2.标识符等基操:
- 专门用来命名 变量、函数、类等命名。
- 命名: 字母、数字、下划线组成 且数字不能开头
注意:python3.X标识符中可以包含非ASCII码(包含中文、日语、拉丁等 实际开发中不能用) - 保留字:python 已经定义好的有特殊功能或者特殊意义的标识符 命名时不能使用
关键字:'False', 'None', 'True', 'and', 'as', 'assert', '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'
python
import keyword #导入关键字模块
print(keyword.kwlist,end="\t") #打印所有的关键字
3.行 与 缩进 基操
python对代码有严格要求
缩进:同一级代码(空格或者tab制表符)缩进必须一致 (: 后需缩进)
行的规范:要求声明函数和类的前后需要两个空行
python
a =int( input("随便输入:"))
b =int( input("随便输入:"))
if a >b:
pass
4.分段显示:
多行显示 可以再换行位置加\ 加 \ 不能将变量名或者数据拆开
如果代码是列表元组字典集合的字面量可以直接换行
python
list = [1,2,3,
"aa"]
a = 1+2+3+\
5+6+7+8+\
3
5.print相关操作:
- 一行显示多条代码 多条语句必须加 ; 号
python
print("aa");print('bb')
print(内容) 在控制台中打印内容 内容必须是Python支持的数据;字符串加“”‘’,数字可以直接写
print(内容1,内容2,...)一行打印多个内容 控制台显示时 用 隔开
默认情况下 一个print输出占一行(以换行结束) 一个print中的多个内容用空格隔开
print(内容1,内容2,end = '==='换行,sep = ''分割)
python
print("a","c","d",end='===')
print("lorry")
print("lorrybz")
print("a","c","d",sep='@')
print("a","c","d",sep='')
5.input、type、isinstance函数相关操作:
input(‘your name:’) 控制台输入内容以回车结束,然后返回
返回内容是字符串
执行到input时 程序会停下 直到输入完成时
python
yonghuming = input("your name")
key_word = input("your passw:")
type:获取数据对应类型
python
print(type(100))
print(type(a))
isinstance函数:isinstance(数据,类型)-判断是否是指定的类型,结果是布尔值。
python
print(isinstance(a,complex)) # True
print(isinstance(a,str)) #False
四 常用数据类型
Python中常用的数据类型 整形、浮点型、布尔、字符串、元组、列表、字典、集合、函数等。
1.常见数据类型的字面量(常量)
整形:整数:100,200
浮点型:有小点数的
布尔:true false
字符串: “ ” ' ' str();
列表:[1,2,'aa']
元组:(23,98,"awm")
字典:{"平板":230,"mate20":450}
2.数字相关的类型
1.整型(int):整数对应的类型,包含了所有的整数
py3.x整型对应的类型只有 int
py2.x 有long 和 int
python中的整数除了可以用十进制表示 还可以用二进制、八进制、16进制
2.浮点型(float):小数对应的类型,正的和负的
支持科学计数法 :2e4 210^4 2e-2 210^-2
python
print(2e4)
3.布尔(bool)只有True(真)实质是1 ;和False(假)实质是0 都是关键字
print(1+True,1+False)
4.复数(complex) 表示所有的虚数对应的类型
a+bj j:代表虚部 实部就是数字
python
a = 10+10j
b = 5-5j
print(a+b)
5.类型的转换
类型名() 将数据转换成指定的类型
浮点型转换成整型:直接取整 int()
整型转换成浮点型:屁股直接加 .0 float()
其他类型转换成布尔:bool() 0转换成False 其余的全是True
复数不能转换成整型和浮点型 可以转换成布尔类型
任何数据都可以转换成布尔
python
print(int(12.5))
print(bool(12.5),bool(0),bool(-1),bool(5+10j))
print(int(True),float(True))
print(complex(1.0002),complex(True),complex(100))
五 进制问题
1.十进制
基数:0 1 2 3 4 5 6 7 8 9
进位:逢十进一
位权:123 = 110^2+2101+3*100 (10^n n = 0 1 2 3 4 )
表示方式:所有的数字输入都是十进制
2.二进制
基数:0 1
进位:逢二进一
位权:10011 = 12^0+121+0*22+02^3+12^4 = 19 (2^n n = 0 1 2 3 4 )
表示方式:在二进制数前加前缀:0b 0B
0b101010
0B101010
print(0b10011)
3.八进制
基数:0 1 2 3 4 5 6 7
进位:逢八进一
举例: 67 123456452
位权:123 = 38^0+281+1*82 = 83 (8^n n = 0 1 2 3 4 )
表示方式:八进制数前加0o 0O
0o12356
0O123456
print(0o123)
4.十六进制
基数:0 1 2 3 4 5 6 7 8 9
a(10) b(11) c(12) d(13) e(14) f(15)(大写也可以)
进位:逢十六进一
10 表示16
12a abc
位权:123 = 316^0+2161+1*162 = 291 (16^n n = 0 1 2 3 4 )
表示方式:在十六进制数前加0x 0X
0x12abcfd
0X12abcfd
print(0x123)
5.其他进制和十进制之间的转换
1.其他进制转十进制:每一位上的数*权值,然后再求和
110(2) = 0*2^0+1*2^1+1*2^2 = 6
110(8) = 0*8^0+1*8^1+8*2^2 = 72
110(16) = 0*16^0+1*16^1+16*2^2 = 272
6.将十进制转成其他进制:
短除法
100(2)=1100100
100(8)=144
100(16)=64
79(2) = 1001111
79(8)= 117
79(16) =4f
7.二进制转成八进制:
二进制转八进制:每3位的二进制转成1位的八进制
001 100 100 110 010 011 100 :位数不足用0补位。
1446234
八进制转二进制:每1位的八进制转成3位的二进制
6745(8) 转成二进制 110 111 100 101
8.二进制转成十六进制:
每4位二进制转成1位的十六进制
0110 0100 1100 1001 1100
64c9c
十六进制转成二进制:每1位十六进制转成4位的4进制
6745 转成二进制 0110 0111 0100 0101
a12 八进制转成二进制 1010 0001 0010
八进制和十六进制之间的转换。先转换成二进制
八进制和十六进制之间的转换。先转换成二进制
9.进制转换相应的函数
返回值是字符串
- bin(数字) 将数字转换成二进制
print(bin(100))
print(bin(0xacd))
print(bin(0o6547))
- oct(数字) 将数字转换成八进制
print(oct(100))
print(oct(0xacd))
print(oct(0b1000100))
- hex(数字) 将数字转换成十六进制
print(hex(100))
print(hex(0o672))
(hex(0b1000100))
所有进制最终会自动转换成十进制
a = 0xaf
print(a)
六 原码、反码、补码问题
常识了解1:计算机数字的存储
计算机能够直接存储的是数字 并且存的是数字的补码
常识了解2:内存大小
位(bit)
1字节 = 8位
1kb = 1024字节
1mb = 1024kb
1gb = 1024mb
1tb = 1024gb
2:原码:
符号位+真值(用最高位表示符号位,后面的其他为表示数字的二进制)
- 符号位:0 -> 正,1 -> 负数
- 真值:数字对应的二进制值
举例:
10(源码) = 0 0001010
-10(源码) = 1 0001010
3:反码:
正数的反码和原码一样
负数的反码是符号位不变,其余位上的数取反(0变1,1变0)
10(的反码) = 00001010
-10(的反码) = 1 1110101
4:补码:
正数的补码和原码一样
负数的补码是 反码+1
10(的补码) = 00001010
-10(的补码) = 1 1110110
注意:数据存储和运算的时候采用的是补码,看结果看的是原码大小。
举例子:
原码,加法。
3的二进制:0011
2的二进制:0010
3+2= 0101 = 5
减法:3-2
补码:
3(补码)= 0011
-2(补码)= 1101(反码) = 1110(补码)
0011(补码) + 1110(补码)= 0001 = 0001 =1
2-3
2:0010(原码) = 0010(补码)
-3:1011(原码) = 1100(反码)=1101(补码)
0010(补码)+1101(补码) = 1111(补码)=1110(反)=1001=-1