2018-09-30 05 day 作业


一、认识Python

1.常用的快捷键

  • control+/注释的快捷键,添加或取消注释,删除代码可以将代码注释,方便以后使用
  • control+s保存
  • control+b编译(在相应软件中有用)
  • control+r执行或编译加执行
  • control+c复制/拷贝
  • control+v粘贴
  • control+x剪切
  • control+z撤销
  • control+shift+z/control+y反撤销
  • control+f查找
  • control+a全选
  • control+n新建
  • shift可以选择部分内容(和鼠标配合,选择开始和结束中间的部分)
  • control可以让多个位置出现光标(和鼠标配合)

附:不是只在Python里有效


二、Python的基本用法

1.注释

  • 意义:写在代码中不参与编译执行的部分

  • 作用:对代码进行注释说明,方便程序员更好的阅读

  • 分类:
    单行注释:在文本内容前面加#
    多行注释:
    a.每一行前都加一个#号
    # 我是注释1
    # 我是注释2
    b.将注释放在三个单引号/三个双引号中(推荐使用双引号)
    '''
    我是多行注释1
    我是多行注释2
    '''

2.标识符

  • 作用:标识符是用来命名的(比如变量名,函数名,类名)

  • 要求:
    a.由字母数字和下划线组成,并且数字不能开头(Python2.x规范)
    b.在Unicode编码中,除了ASCII码表中的字母、数字、下划线以外不能作为标识符的一部分,其他都可以,数字不能开头(Python3.x规范)

注意: 在实际开发中,现在还是推荐使用Python2.x规范

  • 测试代码:
abc = 100
abc123 = 100
abc_123 = 100
_123 = 100
# 1abc = 100 报错
你好 = 100

3.语句

C/JAVA语法,每条语句结束必须加分好

python中一条语句结束可以加分号也可以不加;如果一行显示多条语句,那么每条语句之间必须加分号

  • 测试代码:
print('abc');print('ABC')
  • 测试结果:


    语句案例测试结果

4.行和缩进

同样等级的代码对应的缩进必须一致,只有在需要产生代码块的时候才需要加缩进,函数的声明和类的声明的前后需要有两个空行

5.多行显示问题

  • a. 在需要换行的地方加反斜杠,然后再换行(反斜杠需要破坏数据本身)
sum1 = 1312321323+123213213123+1232142321+\
       213213123213+2321321312+21321321321+\
       3213213+12321321321+123213213
  • b. 如果是列、字典、元祖和集合的值,可以直接换行
name = [1321,13213,2324343,535353,
        3434343,2432423432,3543532532,
        34532532532,32532532532,3532535325,
        35325325,2353253253]

6.常见的数据类型及其自变量

分类:

中文 英文
整型 int
浮点型 float
布尔 bool
字符串 str
列表 list
字典 dict
元祖 tupl
集合 set

介绍:

  • 整型:相当于数学中的整型,例如:100,-12,+30

  • 浮点型:带小数点的数,例如:12.12,0.0,-12.53

  • 布尔型:只有两个值,分别是True(真)和False(假)

  • 字符串:用单引号或者双引号括起来的数据,例如:'abc','100','abc100`~'

7.关键字

  • 意义:在python中有特殊功能和特殊意义的一些标识符(单词)

  • 打印关键字代码:

import keyword  #导入keyword模块
print(keyword.kwlist)  #打印所又的关键字
  • 结果:


    123.JPG

三、数字类型

1.四种数字类型

中文 英文
整型 int
浮点型 float
布尔 bool
复数 complex

2.数字类型简介

  • a.整型(int):包含python所有整型,Python3.x整型只有int类型这一种,但是Python2.x除了int还有long

例子:

100
123
-78
+782
  • b.浮点型(float):包含了python中所有小数
    注意:浮点型支持科学计数法

例子:

12.89
-123.9098
+237.890
print(12e2)     #12*10^2   1200.0
print(12e-3)    #12*10^(-3)   0.012
  • c.布尔(bool):布尔类型的值只有两个,分别是True(对应1)和False(对应0)
    注意:布尔值的首字母是大写的

例子:

True
False
print(False+1)     #1
print(True+1)      #2
  • d.复数(complex):由实部和虚部组成的数字

例子:

10+10j

3.获取数字类型

  • 方法:在Python中采用type(数值/变量),来获取括号中值的类型

  • 例子:

print(type(10j))
print(type(100))
print(type(True))
print(type(2e2))
  • 结果:
    获取数据类型结果

4.转换数字类型

  • 方法:在Python中采用类型名(),将其他类型的数据,转化成当前类型
  • 例子:
print(int(12.5))
print(bool(10))
print(float(100))
print(complex(100))
# print(int(10j))     注意:复数不能转换成整型和浮点型
  • 结果:


    转换数据类型结果

四、变量

1.变量

作用:程序在内存中存储数据的容器

2.声明变量

  • 概念:在内存中开辟空间存储数据

  • 方法:
    C/Java声明变量:类型 变量名 = 初值;
    Python声明变量:变量名 = 初值

  • 说明:
    a.变量名:程序员自己命名,要求是标识符,并且不是关键字;
    所有的字母必须是小写的,如果变量名由多个单词组成,多个单词之间用下划线隔开;
    看见变量名,要知道这个变量大概存的是什么数据
    b.=:赋值符号,将等号右边的值赋给左边的变量
    c.初值:有值的表达式(具体的自变量或者是其他已经声明过的变量)

注意:变量只有在赋完值后才能使用(只能声明后才能使用)

# 将变量student_name中的值,赋给new_name
new_name = student_name
# print(new_name2)     NameError: name 'new_name2' is not defined
  • 测试代码:
# 声明一个变量number并且赋值为100
number = 100
print(number)     
# True = 12.5     SyntaxError: can't assign to keyword
# 1abc = True       SyntaxError: invalid syntax
# 声明一个变量student_name,赋值为'小明'
student_name = '小明'
print(student_name)
# 注意:虽然int、float、bool等不是关键字,但在需要命名的时候,最好不用他们来命名,否则会改变它们原来的功能
# int = 100
# print(int)
# int(89.9)
  • 测试结果:


    打印变量测试结果
  • 附:声明完的变量可以重新赋值,重新赋值后,新的值会覆盖原来的值
student_name = '小花'
print(student_name)
# 注意:在Python中,同一个变量可以存储不同类型的值
student_name = 100
print(student_name)
重新赋值结果图

3.多变量声明

  • 方法:
    变量名1=变量名2=变量名3... = 初值

  • 测试代码:

a = b = c = 123
print(a,b,c)     #print同时打印多个数据,多个数据之间用逗号隔开
  • 测试结果:


    多变量声明测试结果.JPG

4.声明变量区别

  • C/Java声明变量:类型 变量名 = 初值
    int a = 10;
    a = 100;
    开辟4个字节的内存空间a,将10放进去,重新赋值的时候,修改空间内的值
  • Python声明变量:变量名 = 初值
    a = 10
    a = 100
    在内存中开辟空间把10存起来,用a将内存空间命名,重新赋值的时候,再开辟空间把100存起来,重新用a命名
  • 附:不同的类型,在内存中存储的时候所占的内存不一样

五、运算符

1.运算符类型

  • 分类:
    • 数学运算符
    • 比较运算符,
    • 逻辑运算符,
    • 赋值运算符,
    • 位运算

2.数学运算符

  • 分类:
符号 意义
+ 求和
- 求差
* 求积
/ 求商
% 求余
// 整除
** 幂运算
  • 测试代码:
#   a.+:求和,和数学中的功能一模一样
print(100 + 10)
print(-100 + 10)
print(12.5 + 3.14)
#   b.-:求差,和数学中的功能一模一样
result = 99-23
print(result)     #将99-23的结果赋给变量result
#   c.*:求乘积,和数学中的功能一模一样
print(1.23 * 3)
print(-1.23 * 2)
print(-1.23 * -2)
#   d./:求商,和数学中的功能一模一样
#   注意:和C语言中的/不一样
print(5/2)
print(12.5/5)
#   e.%取余:求余数
#   注意:Python中小数和整数都可以求余数
print(5%2)
print(6%2)
print(5.5%0.3)
#   f.//整除:,求商,结果只取整整数部分
print(5//2)
print(6.4//2)
#   g.**幂运算:求幂
#   x ** y :求x的y次方
#   技巧:可以通过设置y的值来实现开方
print(2**3)
print(100*0.5)
  • 测试结果:


    数学运算符测试代码

3.比较运算符

  • 分类:
符号 意义
> 大于
< 小于
== 等于
!= 不等于
>= 大于等于
<= 小于等于
  • 附:所有比较运算的结果是布尔值:True/False

  • 测试代码:

print(100 > 10)
print(100 < 10)
print(12.5 == 12.5)
print(10 == 12.5)
number = 10
print(number == 10)     #False
print(number)
print(number != 100)    #True
print(100 >= 100)       #True
print(10<11)            #True
print(10<=10)           #True
  • 测试结果:


    比较运算符测试结果

4.逻辑运算符

  • 分类:
符号 意义
and
or
not
  • 介绍:
    a.值1 and 值2:两个都为True,结果才是True,否则都是False,相当于生活中的并且(要求多个条件同时满足时,使用and连接)
    b.值1 and 值2:两个都为False,结果才是False,否则都是True,相当于生活中的或者(要求多个条件有一个满足时,使用or连接)
    c.not 值:值取反(True -> False;False -> True),相当于生活中的不是(否定某个条件的时候使用not)

  • 测试代码:

a.值1 and 值2:两个都为True,结果才是True,否则都是False,相当于生活中的并且
print('=====================================')
print(True and True)     #True
print(True and False)    #False
print(False and True)    #False
print(False and False)   #False
# 练习:获得奖学金的条件:要求绩点在3.5以上,并且操评分在90分
grade = 2.8
score = 95
# 条件一:
grade > 3.5
# 条件二:
score > 90
# 两个条件同时满足
print(grade > 3.5 and score > 90)
#   b.值1 and 值2:两个都为False,结果才是False,否则都是True,相当于生活中的或者
print('=====================================')
print(True or True)     #True
print(True or False)    #True
print(False or True)    #True
print(False or False)   #False
# 练习:是否穿毛衣出门:温度低于20度,或者风度高于5级
temperture = 18
wind_speed = 4
# 条件一:
condition1 = temperture < 20    #condition1 = True
# 条件二;
condition2 = wind_speed > 5     #condition2 = False
print(condition1 or condition2)
#   c.not 值:值取反(True -> False;False -> True),相当于生活中的不是
age = 18
# 条件:年龄不大于18
print(age <= 18)
print(not age > 18)
  • 测试结果:


    逻辑运算符测试结果
  • 附:Python中and和or会有短路现象
    • and的短路现象:值1 and 值2 -->一旦确定值1的值是False,就不会执行判断值2
    • or的短路现象:值1 or 值2 -->一旦确定值1的值是True,就不会执行判断值2

5.赋值运算符

  • 分类:
符号 意义
= 等于
+= 求和等于
-= 求差等于
*= 求积等于
/= 求商等于
%= 求余等于
//= 整除等于
**= 幂运算等于
  • 附:赋值运算符的左边必须是变量,在赋值的时候是先算赋值符号右边的结果,然后再将结果赋给左边的变量

测试代码:

# 100 = 100     SyntaxError: can't assign to literal
result = 10 > 100
print(result)
#   a.=:单纯的将右边的值赋给左边
num1 = 100
#   b.+=,-=,*=,/=,%=,//=,**=:要求左边的变量本身必须是有值的
#   变量1 += 值 -->变量1 = 变量1 + 值
num2 = 100
num2 += 10
print(num2)
num3 = 4
num3 *= 2
print(num3)

*测试结果:


赋值运算符测试代码

6.运算符的优先级

  • 优先级:数学运算符((幂运算>乘、除、取整、取余>加、减)>比较运算符>逻辑运算符>赋值运算符

  • 计算方法:先计算优先级高的,优先级相等,从左往右依次运算,如果有括号优先计算括号里的

  • 测试代码:

print((100 > 200) - 50 * 3)
  • 测试结果:


    捕获.JPG

作业

1.写代码获取数字1234中的十位上和百位上的数字

解答:

number = 1234
print(number//10%10)
number = 1234
print(number//100%10)
捕获.JPG

2.如果变量n的值是6784, 以下表达式的结果是多少?

  1. n / 1000 % 100
  2. n % 1000 / 100
  3. n // 100 % 10
  4. n // 10 % 100 // 10
  • 解答:
    1. n/1000%100
      =6.784%100
      =6.784
    2. n%1000/100
      =784/100
      =7.84
    3. n//100%10
      =67%10
      =7
    4. n//10%100//10
      =678%100//10
      =78//10
      =7
      *代码验证:
print(6784 / 1000 % 100)
print(6784 % 1000 / 100)
print(6784 // 100 % 10)
print(6784 // 10 % 100 // 10)
题二解答

3.表达式 10 / 4 + 23 // 4 * 2 - 30 的结果是多少?

  • 解答:
    10/4+23//42-30
    =2.5+5
    2-30
    =-17.5
  • 代码验证:
print(10 / 4 + 23 // 4 * 2 - 30)
题三解答

4.写出下面每一行中n3的结果:n1 = 4; n2 = 5

  1. n3 = n1 >n2
  2. n3 = n1<n2
  3. n3 = n1==4
  4. n3 = n1!=4
  5. n3 = n1 == 1+3
  • 解答:
    1. n3=n1>n2
      ->n3=4>5
      ->n3=Flalse
    2. n3=n1<n2
      ->n3=4<5
      ->n3=True
    3. n3=n1==4
      ->n3=True
    4. n3 = n1!=4
      ->n3=4!=4
      ->n3=Flalse
    5. n3=n1==1+3
      ->n3=n1==4
      ->n3=True
  • 代码验证:
n1 = 4
n2 = 5
n3 = n1 > n2
n4= n1 < n2
n5 = n1 == 4
n6 = n1 != 4
n7 = n1 == 1+3
print(n3,n4,n5,n6,n7)
image.png

5.写出以下代码执行完成后,num的结果

num = 10
num /= 2
num += 10 * 10 / 4 + 23*2

  • 解答:
num = 10
num /= 2
num += 10 * 10 / 4 + 23*2
捕获.JPG

6.下面定义变量正确的是()

a. a = b = c = 10
b. a, c = 10
c. in = 20
d. num = 10; t = 20

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

推荐阅读更多精彩内容

  • 第2章 基本语法 2.1 概述 基本句法和变量 语句 JavaScript程序的执行单位为行(line),也就是一...
    悟名先生阅读 4,055评论 0 13
  • 一、认识Python 1.常用的快捷键 control+/注释的快捷键,添加或取消注释,删除代码可以将代码注释,方...
    丿Rem丶阅读 528评论 0 2
  • 第一步 导包 第二步 创建测试类 并在类上加上测试的注解
    神豪VS勇士赢阅读 78评论 0 0
  • 这是这学期第二次回家,我真正意义上的家。路线与上一次不同了,因为停工数月的大路终于开修了,于是大路不通车,只好从小...
    96大阳阅读 240评论 0 2
  • 汤啵阅读 135评论 0 0