Day2-pathon基础语法,计算机基础知识

一、快捷键

ctrl+/ -添加或者取消一行注释
ctrl+s -保存
ctrl+c -复制
ctrl+v -粘贴
ctrl+n -新建
ctrl+f -搜索
ctrl+r -搜索替换
ctrl+z -撤销
ctrl + shift +z -反撤销
ctrl+a -全选
shift+鼠标 -选中指定范围
tab - 补充代码

注意事项

程序中涉及到的所有和语法相关的符号都是在英文输出法下对应的符号

print,是python内置函数,作用是用来打印括号中的内容
单引号是字符串的标志

print('hello world')

二、python的基础语法

1.注释

注释是程序中专门用来注释说明的文字,不参与程序本身的编译和执行,对程序的功能没有任何的影响
单行注释: 在说明性文字前面加#
使用三个单引号或者三个双引号括起来,来设置多行注释
但是一般使用三个双引号

2.标识符

标识符是专门用来命名的,给变量命名、函数命名、类命名等

要求:

python中的标识符要求是由数字、字母和下划线组成,并且数字不能开头

注意,在python3.X,标识符中可以包含非ASCII码字符(非ASCII码包含中文、日语、韩语等等)
但在实际开发的时候不要用

num = 100

3.行与缩进

python中对代码的缩进有严格要求,同一代码前面的缩进(空格/tab)的个数必须一致
行的规范:要求声明函数和类的前后需要有两个空行

4.分段(行)显示

一句代码很长,需要多行来显示的时候,可以在需要换行的位置加\

注意:加\的时候不能将一个数据,一个变量名拆开

num =  213123123+123123123+123123123+\
       131323123+12312313+123123+\
       123123123123+213123+123123

如果代码是列表、元祖、字典、集合的字面量,可以直接换行,不用加\

5.一行显示多条语句

一行显示一条语句的时候,后面不用加分号。但如果希望在一行显示多条语句,那必须加分号
print('aaa');print('bbb')

6.关键字

python中已经定义好的有特殊的功能或者特殊的意义的一些标识符,就是ptthon的关键字
命名的时候不能使用关键字

import keyword  #  导入keyword模块
print(keyword,kwlist)  # 打印python中所有的关键字

7.print函数和input函数

print(内容)-在控制台中打印内容(内容必须是python数据)
print(内容1,内容2,...) - 在一行打印多个内容,在控制台显示的时候多个内容之间用空格隔开

默认情况下,一个print中的内容占一行(以换行结束),一个print中的多个内容用空格隔开

print(内容1,内容2,...,内容n,end='换行标志')
print(内容1,内容2,...,内容n,end='分割标志')
print('打印1')
print(100)
print('abc','bcd',123123)
print('打印1',end='==')
print(100)
print('abc','bcd','200',sep='@')
print('abc','bcd','200',sep='')

input() -从控制台输入一串内容,以回车结束。并且将内容返回(以字符串的形式返回)

注意:程序执行到input的时候,程序会停下来,直到输入完成为止

print(input('请输入:'))

三、python常用数据类型

python中常用的数据类型有:整形、浮点型、布尔、字符串、列表、字典、元祖、集合、函数等...

1.昌建数据类型的字面量(常亮)

整形:100,234,-432 -所有的整数
浮点型:12.3,321.4,-123.1 -所有的小数
布尔:True,False -只有两个值
字符串:'abc',"dasda","阿萨德" -由双引号或者单引号括起来的内容
列表:[12,'ads',True]
元祖:(312,123,'sdf')
字典:{'ad':sdf:213:'sdf'}

2.数字相关类型

python中和数字相关的类型:整形,浮点型,布尔,复数
整形(int):整数对应的类型,包含了所有的整数。python3.x中整形对应的类型只有一个:int
python2.x中整数对应的类型有:int和long

python中的整数,除了可以用十进制表示,还可以用二进制、八进制和十六进制进行表示
浮点型(float):小数对应的类型,包含了所有小数。
支持科学计数法

print(2e4)
print(3e-2)

3.布尔(bool):只有True和False,其中True表示真,False表示假。True实质就是数字1,False实质是数字0
True和False都是关键字

print(True,False)
print(True+1,False+1)

4.复数(complex):所有的虚数对应的类型
数字后面加j,来表示复数的虚部。实部就是普通的数字

10+1j
20-9j
print((10+1j)+(20-9j))

3.type函数

type(数据) - 获取数据对应的类型

print(type(100))
print(type(10+2j))

4.isinstance函数

isinstance(数据,类型) - 判断制定的数据是否是制定的类型

print(isinstance(1,bool))  # False
print(isinstance(1,int))   # True

5.类型的强制转换

类型名(数据) - 将指定数据转换成指定类型
整形转成浮点型:在整数的后面加.0 float()
浮点型转成整形:只保留小数点前面的整数部分 int()
其他类型转布尔:0转换成False,其他的转换成True bool()

注意:复数不能转换成整形和浮点型,可以转换成布尔类型。(不管什么类型都可以转换成布尔)

print(int(13.5))
print(float(123))
print(bool(13))
print(bool(-13))
print(bool(0))
print(complex(1))
print(complex(1.4))
print(complex(False))
print(int(1+1j))

四、进制

1.十进制

基数:0,1,2。。。9
进位:逢10进1
位权:123=100+20+3 = 110^2+2101+3*100(10^n)
d.表示:数字直接写就是十进制

2.二进制

a.基数:0,1
b.进位:逢2进1
c.位权:1101 = 12^0+021+1*22+1*2^3
d.表示:在二进制数前加前缀:0b、0B

3.八进制

a.基数
0,1,2,3,4,5,6,7
b,进位:逢8进1
c.位权:123(8)= 38^0+281+1*82
d.表示:在八进制数前加前缀0o或者0O

4.16进制

a.基数:0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f
字母大写和小写都可以
b.进位:逢16进1
c.位权:123(16)=316^0+2161+1*162
d:表示:在十六进制数的前面加前缀:0x或者0X

5.其他进制和十进制之间的转换

a.其他进制转换十进制:每一位上的数*权值,然后再求和

110(2)=0*2^1+1*2^2=6
110(8)=1*8^1+1*8^2=72
110(16)=1*16^1+1*16^2=272

b.将十进制转换成其他的进制

6.二进制和八进制十六进制的相互转换

二进制转八进制:每3位的二进制就转换成1位的八进制

二进制转十六进制:每4位的二进制就转换成1位的十六进制

7.进制转换相应的函数 - 返回值是字符串

bin(数字) - 将数字转换成2进制

print(bin(100))
print(bin(0x12312))
print(bin(0o7612))

oct(数字) - 将数字转换成8进制

print(oct(100))
print(oct(0x1f2))
print(oct(0b0010101010))

hex(数字) -将数字转换成16进制

print(hex(0b010101))
print(hex(0x123123123))
print(hex(123123))

所有进制最后会自动转换成10进制

num = 0xaf
print(num)

五、原码反码和补码

1.计算机数据的存储

计算机能够直接存储的是数字,并且存的数字的补码

2.计算机内存大小单位

位(bit)
1字节=8位
1KB=1024字节
1MB=1024KB
1GB=1024MB
1TB=1024GB

3.原码

符号位+真值 (用最高位表示符号位,后面的其他位表示数字的二进制)
符号位: 0->正,1->负数
真值:数字对应的二进制值

10(原码)=00001010
-10(原码)=10001010

4.反码:

整数的反码的原码一样。负数的反码是符号位不变,其余位数取反(0变成1,1变成0)。

10(反码)=00001010
-10(反码)=11110101

5.补码:

正数的补码和原码一样。负数的补码是反码加1.

10(补码)=00001010
-10(补码)=11110110

注意:数据存储和运算的时候才用的是补码,看结果看的是原码。

如果计算机存储的是原码:
3:0011
20010
3+2 = 0101 = 5

3-2=3+(-2)
3:0011
-2:1010
-2的反码:1101
-2的补码:1110
3的补码:0011
0011(补)+1110(补)=0001(补)
2-3=2+(-3)
2:0010
-3:1011
2的反码:0010
-3的反码:1100
-3的补码:1101
0010(补)+1101(补)=1111(补)=1110(反)=1001(原码)=-1

你可能感兴趣的:(Day2-pathon基础语法,计算机基础知识)