day-02总结

python的基础语法

一、快捷键

ctrl+/ 添加或者取消一行注释

ctrl+s 保存

ctrl+c 复制

ctrl+v 粘贴

ctrl+n 新建文件

ctrl+f 搜索

ctrl+r 搜索加替换

ctrl+z 撤销

ctrl+a 全选

ctrl+shift+z 反撤销

shift+鼠标 选中指定范围

tab 补全代码

二、注意事项

程序中所有涉及到的语法和符号都是在英文状态下的!!!

print()是Python的内置函数,用来打印括号中的内容
单引号是字符串的标志
print('hello world')
print('hello python')

三、注释

注释是程序中专门用来说明的文字,不会参与程序的编译和执行,不会对程序功能产生任何影响
单行注释前加#号
多行注释用三队 ''' "" 包含起来

四、标识符

标识符由字母,数字,下划线组成,字母不能开头
标识符就是专门用来命名的,

num = 100
num2 = 100
__ = 100
12abc = 100   SyntaxError: invalid syntax
你好 = 100
 n-m = 100   SyntaxError: can't assign to operator

五、行与缩进

python中对代码里面的所有有严格要求。同一级代码前面的缩进(空格/tab)的个数必须一致
行的规范:要求声明函数和类的前后需要有两个空行
print('hello world') # IndentationError
if 100>10:
print('大于’)

六、分段(行)显示

一句代码很长,需要多行来显示的时候,可以在需要换行的位置加
注意:加\的时候不能将一个数据,一个变量名给拆开

num=123124312431+53463465246262-1231231+
2314324+12312313212+414141412+342343214+
2131231231

如果代码是列表、元祖、字典、集合的字面量,可以直接换行,不用加
listl=[12,
54,
'fdsfsf',
'khjdnvds']

七、一行显示多条语句

一行显示一条语句的时候,后面不用加分号。但是如果希望在一行显示多条语句,那么多条语句之间必须加分号。

print('aaa');print('bbb')

八、关键字(保留字)

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

'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'

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

九、print函数和input函数

print() 在控制台打印出括号内的内容(内容必须是python数据)
print(1231321, 123123123, 213123,123123)在一行打印多个内容,在控制台显示的时候多个内容之间用空格隔开
默认情况下,一个print中的内容占一行(以换行结束)。一个print中的多个内容用空格隔开
print(内容,内容1,...,内容n, end='换行标志')
print(内容,内容1,...,内容n, sep='分割标志')

print(100)
print('abc', 'bcd', 200)
print('打印1', end='听党指挥')
print(100)
print('abc', 'bcd', 200, sep='【')
print('abc', 'bcd', 200, sep='')

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

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

python常用数据类型

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

常见数据类型的字面量

整型(int): 100, 23, -129 -- 所有的整数
浮点型(float): 12.3, 45.0, -0.1123 -- 所有的小数
布尔(bool): True, False -- 只有两个值
字符串: 'abc', "ahjs", '348sj', "dasdasd-" -- 由双引号或者单引号括起来的内容
列表: [12, 'abc', True]
元祖:(23, 89, 'asd')
字典:{'ab': 120, 18:'abc'}

数字相关类型

python中和数字相关的类型:整型、浮点型、布尔、复数(虚数)

整型(int)

:整数对应的类型,包含了所有的整数。python3.x中整数对应的类型只有一个:int
python2.x中整数对应的类型有:int和long

python中的整数,除了可以用十进制表示,还可以用二进制、八进制和十六进制进行表示
213
42342
414

浮点型(float):

小数对应的类型,包含了所有小数。
支持科学计数法

12.43
34.0

布尔(bool):

只有True和False, 其中True表示真,False表示假
True实质就是数字1,False实质是数字0
True和False都是关键字

复数(complex):

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

1+2j
5+9j

type函数

type(数字)数字对应的类型

print(type(43.01))

isinstance函数

判断指定的数据是否是指定的类型,结果是布尔值(True或者False)
isinstance(100, float) 判断100是否是float类型
print(isinstance(100, float)) False
print(isinstance(100, int)) Ture

类型的强制转换

类型名(数据) - 将指定数据转换成指定类型
整型转成浮点型: 在整数的后面加.0 float()
浮点型转换成整型: 只保留小数点前面的整数部分 int()
其他类型转布尔: 0转换成False,其他的转换成True bool()
复数不能转换成整型和浮点型,可以转换成布尔类型(不管什么数据都可以转换成布尔)

print(float(False))
print(int(False))
print(bool(10+10j))

进制

十进制

"""
a.基数:0,1,2,3,4,5,6,7,8,9
23
123
90
89
77677676

b.进位:逢10进1
c.位权:123 = 110^2 + 210^1 + 3*10^0 (10^n)

d.表示: 所有的数字都是10进制数
10
234
456

二进制

a.基数: 0,1
011011010001001001
111010101

b.进位: 逢2进1
1+0 = 1
0+1 = 1
0+0 = 0
1+1 = 0 -- 进1
110 + 011 = 1001
101+110 = 1011

c.位权: 1101(2) = 12^0 + 02^1 + 12^2 + 12^3 = 13 (2^n)

d.表示: 在二进制数前加前缀:0b或者0B

0b10101
0B01010
0b2100

八进制

a.基数:0,1,2,3,4,5,6,7
67
12
106465
b.进位:逢8进1
c.位权: 123(8) = 38^0 + 28^1 + 1*8^2 = 83 (8^n)

d.表示:在八进制数加前缀:0o或者0O
0o6461
76

十六进制

a.基数:0,1,2,3,4,5,6,7,8,9,a(10),b(11),c(12),d(13),e(14),f(15)
字母大写和小写都可以

123
12a
ff
ef
abc
abc12

b.进位:逢16进1
c.位权: 123(16) = 316^0 + 216^1 + 1*16^2 (16^n)

d.表示: 在十六进制数的前面加前缀:0x或者0X
0xfd98
0x341

其他进制和十进制的转换

其他进制转十进制:每一位上的数权值,然后再求和
110(2) = 1
2^1 + 12^2 = 6(10)
110(8) = 1
8^1 + 18^2 = 72(10)
110(16) = 1
16^1 + 1*16^2 = 272(10)

b.将十进制转换成其他进制
100(10) = 1100100(2)
100(10) = 144(8)
100(10) = 64(16)

79(10) = 1001111(2)
79(10) = 117(8)
79(10) = 4f(16)

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

a.二进制转八进制:每3位的二进制转换成1位的八进制
001100100110010011100(2) = 1446234(8)

八进制转二进制:每1位8进制,转换成3位的二进制
6745(8) = 110 111 100 101(2)

b.二进制转十六进制:每4位的二进制转换成1位的十六进制
0110 0100 1100 1001 1100(2) = 64c9c(16)

十六进制转二进制:每1位16进制,转换成4位的二进制
6745(16) = 0110 0111 0100 0101(2)
a12(16) = 1010 0001 0010(2)

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

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

print(bin(100))
print(bin(0x6745))
print(bin(0o76))

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

print(oct(100))
print(oct(0x1af))
print(oct(0b110001101))

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

print(hex(100))
print(hex(0o67))
print(hex(0b11011101110))

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

num = 0xaf
print(num)

原码反码和补码

计算机数据的存储

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

计算机内存大小单位

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

原码:符号位+真值 (用最高位表示符号位,后面的其他为表示数字的二进制)

 符号位: 0 -> 正, 1 -> 负数
 真值 :数字对应的二进制值

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

反码:

正数的反码和原码一样。负数的反码是符号位不变,其他位上的数取反(0变成1,1变成0)
10(反码) = 00001010
-10(反码) = 11110101

补码:

正数的补码和原码一样。负数的补码就是反码加1
10(补码) = 00001010
-10(补码) = 11110110

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

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

原码:
3-2 = 3+(-2) = 1101 = -5
3: 0011
-2:1010

补码:
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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,636评论 5 468
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,890评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,680评论 0 330
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,766评论 1 271
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,665评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,045评论 1 276
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,515评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,182评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,334评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,274评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,319评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,002评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,599评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,675评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,917评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,309评论 2 345
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,885评论 2 341

推荐阅读更多精彩内容

  • 网站乱码问题我们会经常碰到,大多见于非英文的中文字符或其他字符乱码,而且,这类问题常常是因为编码方式问题,主要原因...
    波段顶底阅读 2,800评论 1 9
  • 一 编程中的快捷键 ctrl+s - 保存ctrl+c - 复制Ctrl+v - 粘贴ctrl+f - 搜索C...
    Fly_withbird阅读 841评论 0 0
  • python中的进制 计算机在存储数的时候是以二进制的形式去存的十进制,十六进制,八进制,二进制 1.十进制 10...
    流逝_a443阅读 2,146评论 0 0
  • 文/私话 我记得,你说过 露水与鲜花亲吻 是长夜诞生黎明 报答的印证 我记得,你说过 朝阳冉冉...
    私话阅读 1,223评论 2 23
  • 刚刚和60几岁的一个阿姨聊天,我问她一天都做些什么、她说刚刚才起床、早上去广场跳舞了,散散步,每天也不用干什么,就...
    山山而木阅读 142评论 0 0