day2 基操、数据类型、进制、原码反码补码等

一 开场白

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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一.Python程序 1.快捷键 ctrl + s - 保存 ctrl + / - 添加或取消一行注释 ctrl ...
    熙包包阅读 388评论 0 0
  • 1.认识Python 编译性语言:C,Java等 特点:需要把代码转化为可执行文件,再运行结果。运行速度快。 解释...
    L丶Y1122阅读 321评论 2 2
  • 1.快捷键 ctrl+/ 添加和取消注释ctrl+s 保存ctrl+c 复制ctrl +v 粘贴 ctrl + n...
    年華盡耗_c24e阅读 297评论 0 0
  • 今天学习了主要5个内容。 1. 快捷键的使用。 ctrl + / - 添加或者取消一行注释ctrl + s -...
    学python的铁头娃阅读 428评论 0 0
  • 1.快捷键的了解 ctrl + / - 添加或者取消一行注释ctrl + s - 保存ctrl + c - ...
    9527神经阅读 284评论 0 0