2018-08-21 day2

python基础


第一节 快捷键

1.快捷键:

ctrl+/  注释/取消注释
ctrl+s   保存
control+c   复制/拷贝
control+v   粘贴
control+X   剪切
control+b   在sublime中是编译并执行,在其他语言是ctrl+r
control+a   全选
control+z   撤销
contral+shift+z   反撤销
control+f   搜索框
control+n   新建文件
control+shift+n   新建工程
shift+鼠标首尾   可以部分选中

注意

 写代码的时候,一定是在英文状态下


第二节

1.注释

          注释是不会参与代码的编译和执行的,只是对代码进行解释和说明文字(长时间后回头看自己的代码或团队合作时方便别人看懂!)格式分为单行注释和多行注释。

1.1单行注释

格式:单行注释就是在注释文字前加#
例如:#我是单行注释

1.2多行注释(有两种)

格式1:用三个双引号"""....."""或单引号'''.....'''将注释文字括起来
例如
"""
窗前明月光
疑似地上霜
"""
格式2:采用多个单行注释的方式
 # 举头望明月
 # 低头思故乡


2.标识符

2.1 用途:专门用来命名变量、函数和类。
2.2 规范:

  • 标识符是由字母数字下划线组成
  • 数字是不能开头的
  • 区分大小写(a与A是不同的)
  • python3版本以后,标识符中可以包含非ascii码(可以使用中文)但是在实际开发中不建议使用中文

3.关键字

定义:python中保留用来作为特殊语法和拥有特殊功能的一些单词,也称保留字。

imprt keyword
print(keyword.kwlist)

控制台输出:['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中保留的所有关键字


4.行与缩进

4.1缩进要求

  • 同一级的代码必须保持同一缩进(规范:统一使用Tab键产生缩进)
  • 通过缩进来产生代码块(类似其他语言中的{}相同缩进的代码表示同一级代码块)
    例如:
a=10
b=20
if a>10:
    print('abc')

4.2行的规范

  • 申明函数的前后必须有两个换行
  • 声明类的前后也需要两个换行
  • 多个功能模块间用换行隔开

5.多行显示(一句代码多行显示)

  • 在需要换行的地方加“\”,然后在后面换行。换行后缩进不受限制。
    例如:
a=1000000/3900000*900000/987
b=1000000/3900000\
  *900000/987
print(a)
print(b)
  • 列表、字典、元组、和集合的字面量换行不用加“\”。

6.字面量(具体的值即常量)

  • 数字字面量:10,12.2,-20.科学计数法,10j(复数)
c=3e2
print(c)
  • 布尔值:True,fause(注意:布尔值首字母必须大写)
  • 字符串:用''或""括起来的都是字符串。如"jkh@#$%"
  • 列表:[10,20,'hello',True]
  • 字典:{'a':10,'name':'wanglong'}

7.python中的基本数据类型

  • 7.1数字相关的
    int(整形),float(浮点型),complex(复数)
  • 7.2布尔类型bool
    只有True fause两个值
  • 7.3字符串str
  • 7.4列表 list
  • 7.5字典 dict
  • 7.6元组 tuple
  • 7.7集合 set
  • 7.8函数 function
  • 7.9字节 bytes

第三节

1.变量

       声明变量就是在内存中开辟空间存储数据的。(变量就是用来存储数据的)

1.1格式:变量名=值

格式说明:

  • python声明变量时不需要确定类型
  • 变量名:标识符,不能是关键字;见名知意;PEP8命名规范:所有字母要小写,多个单词用下滑线-隔开
  • “=”赋值符号:将右边的值赋给左边的变量
  • 值:表达式(就是有结果的,例如字面量,运算表达式,其他的变量)
name='王宇'
class_name='python1806'
print(name)
print(class_name)

1.2申明一个变量,可以存储不同类型的值

1.3.python中每条语句结束可以不用";"也可以用,但是一行要写多条语句就必须要加。

number=100;number=True
print(number)

1. 4同时申明两个变量,并赋一样的值

str1=str2="旺旺"

1.5同时使用print打印多个值

print(str1,str2)

3.id函数

      id(变量) ---查看变量的地址

print(id(a))
a=20
print(id(a))

以上程序中,两次输出a的地址是不同的,python是动态语言,将20赋值给a后,原来值等于10的内存空间自动释放。

python中申明变量和给变量赋值的原理:先在内存中开辟空间 然后再将变量名作为标签对应(过程:先找杯子,再装水,最后贴标签)。

b=10;a=10
print(id(a),id(b))

注意此处输出a与b的地址是一样的。


第四节

1.int(整形)

所有整数都是整形,python3中整型只有int,python2中有intlong

num1=10
num2=-100

内置函数:type() ---获取括号中数据的类型

print(type(num1),type(num2))

2.fioat(浮点型)

所有带小数点的数都是浮点型。python中的浮点数只有float

num3=0.12
num4=100.00
num5=5e3
print(num3,type(num3),type(num4),type(num5),)

3.布尔bool(True和Fause)

True 对应 1;Fause对应0

说明:int、float、bool三种类型的数据可以自由转化

bool1=True
a=1
print(bool1+a)

此代码块中bool的值在表达式中有布尔型自动转化成整形,值由True转化为1。


第五节

1. 运算符

1.数学运算符(7种)

加减乘除+,-,*,/, //整除,%取余, **冥运算
1.1.1加减乘除,取余跟数学里面一样

print(10+20)
print(3%2)
print(10-2.5)
print(3/2)

1.1.2“//”整除,即求商只取整数部分

print(5//2)

1.1.3** (冥运算)
x**y------表示x的y次方

print(3**2)
print(9**0.5)

2.比较运算符:>,<,==,!=,>=,<=

比较运算的结果都是布尔值

print(10>20)
print(10<20)
print(10!=20)

3.逻辑运算符:and(与),or(或),not(非)

逻辑运算符操作的数据是布尔值,返回的结果也是布尔值

3.1 and 与--和,并且(两个都是true结果才是True,只要有一个为Fause,结果就为False)

3.2 要求两个或者多个条件同时满足

score=4.0;score2=80
print(score>3.5 and score2>=90)

输出结果为False
3.2 or(或)-----或者(两个条件只要满足一个就为True)

3.3 not(非)
例如:年龄不小于18

age=20
print(not age<18)
print(age>=18)

两次输出结果都为True
3.4 in ,not in

print('a' in 'beat')

4.赋值运算符: =(赋值),+=,-=,=,/=,%=,//=,*=

4.1赋值符号的左边必须是变量;运算顺序是先计算右边的值,再赋值给左边的变量

a=10
b=10+20
c=a+b
d=a>b
print(d) 

4.2 格式:变量+=值变量-=值(这的变量必须是已经申明过得变量)。

  • a+=2 # 相当于a=a+2
  • b-=10 # 相当于b=b-10
  1. 3运算符的优先级
  • 数学运算符>比较运算符>逻辑运算符>赋值运算符
  • 数学运算符中:*>(,/,%,//)>(+,-)
  • 优先级高的先运算,如果优先级相同则从左到右依次运算,可以加()改变运算顺序
print(10*20+30<40/20-100)

运算顺序如下:
(1)10*20+30
(2)40/20-100
(3)230<-98


第六节

1.进制

计算机中常用的进制有:二进制、八进制、十进制、十六进制

1.1十进制

1.1.1基数:0、1、2、3、4、5 、6、7、8、9
1.1.2进位:逢10进1
1.1.3十进制上的每一位:123 ------ 1* 100+2 * 10+3 * 1
------10^2 * 1+10^1 * 2+10^0 * 3

1.2二进制

1.2.1基数:0、 1 例如:0101、1011
1.2.2进位:逢2进1
1.2.3二进制数上的每一位:1011---2^0 * 1+2^1 * 1+2^2 * 0+2^3 * 1=11

1.3八进制

1.3.1基数:0、1、2、3、4、5 、6、7
1.3. 2进位:逢8进1

1.3.3 八进制数上的每一位:123 ---8^0 * 3+8^1 * 2+8^2 * 1

1.4十六进制

1.4.1基数:0、1、2、3、4、5 、6、7、8、9、a~f 例如1af
1.4.2进制:逢十六进一
1.4.3十六进制数上的每一位:123---16^0 * 3+16^1 * 2+16^2 * 1


2.进制间的转换

2.1二进制、八进制、十六进制----->十进制

2.2八进制、十六进制-----二进制

  • 将一位的八进制转换为3位的二进制
  • 将一位的十六进制转换成4位的二进制
    例如:
    123(8)----001 010 011(2)
    123(16)----0001 0010 0011(2)

2.3二进制------>八进制、十六进制

  • 将3位的二进制转换成一位的8进制
  • 将4位的二进制转换成一位的16进制,不够4位的在前面补0,不能补在后面

2.4十进制转换成二进制

  • 正整数:除二取余,逆序排列

3.python中各进制数的表示级转化

        python对进制的支持:python支持整数的二进制、八进制、十六进制、十进制

3.1python中二进制、八进制、十六进制的表示

3.1.1 二进制:0b

print(0b11)
print(bin(8)) #将10进制转化成二进制
print(bin(0o12)) #将8进制转化成二进制
print(bin(0x12ad))#将16进制转化成二进制

3.1.1 八进制:0o

print(0o11)
print(oct(8)) #将10进制转化成8进制
print(oct(0x12)) #将16进制转化成八进制

3.1.1十六进制:0x

print(0x11)
print(hex(8)) #将10进制转化成16进制

第7节 补充

计算机在存储数据时,都是以2进制来存储的,存储的都是数据的补码

1.原码:就是数据的二进制形式

  • 正数:符号位的值是0,后面是数值大小
  • 负数:符号位为1,后面是去掉符号位后的数值大小
十进制 ... 二进制
10 1010 0000 1010
-10 1010 1000 1010

2.反码

  • 正数:反码跟原码一样
  • 负数:其原码最高位即符号位不变,其他位按位取反
十进制 ... 二进制
10 1010 0000 1010
-10 1010 1111 0101

3. 补码

  • 正数:补码跟原码一样
  • 负数:反码加1
十进制 ... 二进制
10 1010 0000 1010
-10 1010 1111 0110

4. 计算机加法器

用二进制计算:2+(-3)=-1

2的补码 0000 0010
-3的原码 1000 0011
-3的反码 1111 1100
-3的补码 1111 1101
补码相加 1111 1111

补码---->>原码:补码减1,再按位取反

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

推荐阅读更多精彩内容

  • 第2章 基本语法 2.1 概述 基本句法和变量 语句 JavaScript程序的执行单位为行(line),也就是一...
    悟名先生阅读 4,145评论 0 13
  • 作业 1.下列四组数,依次为二进制、八进制和十六进制,符合要求的是(d)a. 12, 77, 10b. 12,...
    greencap阅读 415评论 0 2
  • Python基础语法 01快捷键 Ctrl+/ 注释/取消注释Ctrl+S 保存Ctrl+C 复制Ct...
    xaidc阅读 149评论 0 0
  • Python就业领域 服务器端应用开发 - 网站服务器/游戏服务器Django / Flask / Tornado...
    Deathfeeling阅读 479评论 0 5
  • 打开电脑,不知怎么的,感触颇多。刚刚看完电影摆渡人,电影中梁朝伟饰演的摆渡人帮助别人,我在想我如何才能渡我...
    lily糖阅读 166评论 0 0