我是靠谱客的博主 端庄店员,这篇文章主要介绍day2-变量和运算符一、笔记整理二、作业1三、作业2,现在分享给大家,希望可以做个参考。

一、笔记整理

day2-变量和运算符

1变量

1.1认识和创建变量

# 1)什么是变量  - 变量是用来保存数据的(在程序中使用数据的时候,不要直接用,而是先用变量把数据存起来,然后通过使用变量来使用数据)

# 2)定义变量(创建变量) - 将数据保存到变量中
'''
语法:
变量名 = 数据

说明:
a.变量名 - 由程序员自己命名;
          要求:是标识符,不是关键字
          规范:见名知义(看到变量名就大概知道变量中保存的是什么数据)
                不使用系统的函数名(如:print、input)、类名(int、float)、模块名(如:print、input)
                所有的字母都小写,多个单词之间用下划线隔开(也可以使用驼峰式命名法)
b.=     - 赋值符号:固定写法
c.数据   - 可以是任何有结果的表达式,例如:具体的某个类型的数据;有结果的运算表达式;已经赋值过的变量
'''

dog_name = '旺财'  # PEP8命名规范
dogName = '旺财'  # 驼峰式命名
print(dogName)

a = 10
b = 'abc'
c = 10 + 20
d = a

1.2使用变量

# 使用变量就是使用变量中保存的数据
x = 100
y = 200
print(x, y)
print(x + 10)

1.3重新给变量赋值

xx = 100
print(xx)

xx = 200  # 重新赋值为200
print(xx)

xx = 'abc'  # 重新赋值为abc  重新赋值的时候,可以赋不同类型的值。重新赋值后 ,新的值会覆盖原来的值
print(xx)

1.4同时定义多个变量

1)同时定义多个变量赋相同的值:变量名1 = 变量名2 = 变量名3…=数据

x1 = x2 = x3 = 100
print(x1, x2, x3)  # 100 100 100

2)同时定义多个变量,赋不同的值:变量名1,变量名2,变量名3,… = 数据1 ,数据2,数据3,…

y1, y2, y3 = 10, 20, 30
print(y1, y2, y3)

3)应用:交换变量的值

方法1:

m = 10
n = 20
t = m
m = n
n = t
print(m, n)

方法2:

m = 100
n = 200
m, n = n, m   # m,n = 200,100
print(m, n)

2定义变量和重新给变量赋值的底层原理

1.python定义变量,为什么不需要写类型?

# 答:python定义变量申请内存的时候,内存申请多大看数据需要多大,不看类型
a = 10
'''
 注意:程序在运行的时候,数据是保存在运行内存中
C 、java在在定义变量之前需要考虑数据的大小
    大小看类型


python:优点:不会出现数据溢出,和浪费的的情况
        缺点:效率相对较低
        大小看数据
'''

2.重新给变量赋值的时候,为什么可以赋不同类型的值?

# 答:重新赋值的时候,会重新申请新的内存
b = 20
b = 'abc'
b = [10, 20, 30]
print(b)

'''
C 、java只是更换了数据,但是类型并没有改变
python 在重新赋值的时候,会重新申请容器(大小、类型根据数据而定)
'''

3.为什么python可以直接计算9999**9999?

# 答:申请内存的时候,会先提前计算这个数据需要多大内存,需要多大就申请多大
a = 9999 ** 9999

# 补充1:获取内存地址的工具:id(变量)    注意:不同的内存地址是不一样的
x = 100
print(id(x))   # 1667146143184

# 重新赋值的时候,地址会发生变化
x = 200
print(id(x))  # 2404361790096
# 补充2:计算机内存的单位
'''
位(bit)
1字节(bytes) = 8位
1kb = 1024字节
1MB = 1024kb
1GB = 1024Mb
1T = 1024Gb
'''

3数学运算符

1.数学运算符: +、-、*、/、%(取余、取模)、//(整除)、**(幂运算)

# 1.python中的 +、-、*、/的功能和数学中一模一样
# 注意: +、-、*、操作,如果操作的数据中有浮点数,结果就是浮点数。都是整数结果就是整数
# / (除法)的结果一定是浮点数

print(3.0 - 2)  # 1.0
print(4 / 2)  # 2.0
print(-10 // 3, -10 % 3)  # -4==>-10-(3*-4)==>2

3.1取余%

取余,又称取模(求余数)
# x % y - 求x除以y的余数
print(10 % 3)  # 1
print(15 % 4)  # 3

# 应用场景1:判断整除关系(判断一个数是否能够被另一个数整除)  - 如果两个数存在整除关系,那么他们的余数是0
num = 21
print(num % 2)
print(20 % 2)
# 应用场景2:取整数的低位数 - 对10或者10的N次幂取余
num = 321367
print(num % 10)  # 7 取个位
print(num % 100)  # 67 取出后两位
print(num % 1000)  # 367 取出后三位
print(num % 10000)

# 被除数 = 除数 × 商 + 余数 === 》余数 = 被除数 - 除数×商
print(10 // 3, 10 % 3)  # 3==>10-3*3==>1
print(-10 // 3, -10 % 3)  # -4==>-10-(3*-4)==>2

3.2 整除 //

#  x // y  - 求x除以y的商,向小取整
print(5 // 2)  # 2
print(-5 // 2)  # -3

# 应用场景1:(在知道两个数能整除的情况下)快速获取整型的商
nums = [10, 24, 45, 56, 77, 88, 33]
print(nums[len(nums) // 2])
print(8 / 2)
print(8 // 2)

# 应用场景2:整数去掉低位数,保留高位数  - 对10或者10的N次幂进行整除操作
nums = 324
# 将324 -> 32
print(nums // 10)  # 32
# 将324 -> 3
print(nums // 100)  # 3

# 练习:写代码获取num的十位数
num = 4567890
print(num % 100 // 10)  # 取出个位数
print(num % 1000 // 100)  # 取百位数

# 正解:方法1
print(num // 10 % 10)
# 方法2:
print(num % 100 // 10)

3.3幂运算 **

# 4. **幂运算
# x ** y   -  求x的y次方
print(2 ** 3)  # 8
print(4 ** 0.5)  # 2.0
print(8 ** (1 / 3))  # 2.0
print(2 ** -2)  # 2.25

4比较运算符

比较运算符 :>、>=、<、<=、==、!=

1.python中所有的比较运算符的结果都是布尔值

print(10 > 30)  # False
print(10 == 20)  # False

num = 0.3434
# 判断num是否能被4整除
print(23 % 4 == 0)  # False

# 判断num是否是浮点数
print(type(num) == float)   # True

# 判断指定年龄是否成年
age = 30
print('是否成年:', age >= 18)   # True

2.python 的比较运算符支持连写表示范围

# 判断num是否在0到1的范围
print(0 <= num <= 1)

# 区间

5逻辑运算符

逻辑运算符:and(逻辑与运算) 、 or(逻辑或运算)、 not(逻辑非运算)

5.1 and-逻辑与运算

'''
1)应用场景:用于连接要求同时满足的多个条件,相当于生活中的并且
2)运算规则:条件1 and 条件2  -- 两个条件都是True,结果就是True。只要有一个是False结果就是False
            True and True    -> True
            True and False   -> False
            False and True   -> False
            False and False  -> False
'''
# 获取奖学金的条件:绩点不低于3.5,并且操评分大于90
gpa = 3.5
score = 93
print('是否能获取奖学金:', gpa >= 3.5 and score > 90)

# 练习1: 判断num是否能够同时被3和7整除
#  条件1:能被3整除 - num % 3 == 0
#  条件2:能被6整除 - num % 7 == 0
num = 23
# 方法1:

print('num是否能够同时被3和7整除:', num % 3 == 0 and num % 7 == 0)

# 方法2:
print('num是否能够同时被3和7整除:', num % 21 == 0)

5.2 or - 逻辑或运算

'''
1)应用场景:如果两个或者多个条件中只要有一个满足就行,就用or来对这些条件进行连接,相当于生活中的或者
2)运算规则:条件1  or 条件2   -- 两个条件中只要有一个是True结果就是True。两个条件都是False结果才是False
            True and True    -> True
            True and False   -> True
            False and True   -> True
            False and False  -> False
'''
num = 21
print('num是否能够同时被3和7整除:', num % 3 == 0 or num % 7 == 0)  # True
# 练习: 判断指定的年分是否是闰年
# 闰年分为普通闰年和四季闰年两种。普通闰年--能被4整除但是不能被100整除;世纪闰年是能被400整除的年
# 普通闰年:year % 4 == 0 and year % 100 != 0
# 世纪闰年:year % 400 == 0

year = 2012
print('是否是闰年:', (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0))

5.3 not - 逻辑非运算

'''
1)应用场景:如果一个条件正向写情况很多很复杂,反向写却很简单的时候,我们就将条件反向写,再加not
2)运算规则:not 条件 - 对指定条件进行否定
          not True -> False
          not False -> True
'''
# num 能被3整除
num = 23
print(num % 3 == 0)

# num 能被3整除
num = 23
print(not num % 3 == 0, num % 3 != 0)
# 示例1:判断num是否不能同时被3和7整除
# 方法1:正向写条件
# 1)能被3整除但不能被7整除:num % 3 == 0 and num % 7 != 0
# 2)能被7整除但不能被3整除:
# 3)既不能被3整除也不能被7整除:

# 方法2:反向写条件
# 反向条件:num能同时被3和7整除
print(not num % 21 == 0)


# 示例2:判断x是否不是数字类型
x = '12'
print(type(x) != int  and type(x) != float)

6赋值运算符

6.1 赋值运算符

赋值运算符:=、+=、-=、*=、/=、%=、//=、**=

# 注意1:所有的赋值运算符的作用都是将数据保存到某个变量中

# 1.=
# 变量 = 数据  - 将右边的数据保存到到左边的变量中
a = 10

# 2.+=、-=、*=、/=、%=、//=、**=
# 变量 += 数据  - 将变量中保存的数据和+=后面的数据进行加法运算,然后将运算结果再赋值给变量
# 注意1:这儿的变量必须是已经赋值过的变量
# 注意2:所有的赋值运算都没有结果
# a1 += 2  # 报错 NameError: name 'a1' is not defined
```
# 注意1:所有的赋值运算符的作用都是将数据保存到某个变量中

# 1.=
# 变量 = 数据  - 将右边的数据保存到到左边的变量中
a = 10

# 2.+=、-=、*=、/=、%=、//=、**=
# 变量 += 数据  - 将变量中保存的数据和+=后面的数据进行加法运算,然后将运算结果再赋值给变量
# 注意1:这儿的变量必须是已经赋值过的变量
# 注意2:所有的赋值运算都没有结果
# a1 += 2  # 报错 NameError: name 'a1' is not defined
b = 2
b += 2  # 相当于b=b+2 ->b = 2 + 2 -> b= 4
print(b)  # 4

c = 10
c %= 3  # c = c % 3 -> c  = 10 % 3 ->c = 1

6.2运算符优先级

# 数学运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符(最低)
# 数学运算符: ** > *、/、//、%  > +、-
# 有括号先算括号内的

二、作业1

day2 Python编程⼊入⻔门作业

选择题

  1. 下列哪个语句在Python中是非法的?(B)
    A. x = y = z = 1
    B. x = (y = z + 1)
    C. x, y = y, x
    D. x = y
  2. 关于Python变量,下列列说法错误的是 (C)
    A. 变量无须指定类型
    B. 变量可以重新赋值
    C. 变量⽆须先创建和赋值⽽直接使⽤
    D. 同一个变量可以保存不同类型的值
  3. 下⾯哪个不是Python合法的标识符(B)
    A. int64
    B. 40XL
    C. self
    D. stu_name
  4. 下列关于Python语⾔说法错误的是(C)
    A. Python是解释型语言
    B. Python是⾯向对象语⾔
    C. Python2.x和Python3.x是完全兼容的
    D. 普通的⽂本编辑器也可以写Python程序
  5. 下列关于print函数用法错误的是(D)
    A. print(100)
    B. print(100, 200)
    C. print(100, ‘hello world!’)
    D. print(10 20)

填空题

  1. Python中单行注释的符号是( # ), 多⾏注释的符号是( 3个单引号(或3个双引号) )。
  2. 语句a, b=10,20执⾏后,a的值是( 10 );语句a, a = 10, 20 执⾏后,a的值是( 20 )。
  3. Python程序文件扩展名是( .py )。
  4. 在Python中,int表示的数据类型是(整型 )。
  5. 在Python中,字符串数据需要⽤( ’ ’ )或( " " )包裹。
  6. 在Python中,布尔类型有( 2 )个值,分别是(True和False )。
  7. 如果想要查看⼀个数据或者变量的数据类型,可以用( type() )函数。

编程题

  1. 写程序提示⽤户输入⽤户名和密码,并且将输⼊的内容保存到不同的变量中。

    username = input('请输入用户名:')
    password = input('请输入密码:')
    
  2. 使⽤一个print输出3个数据,3个数据在⼀行显示,并且用等号(=)隔开。

    print(10, end='+')
    print(20, end='=')
    print(30)
    

简答题

  1. 声明变量的时候, 变量名的注意事项有哪些?

    答:1)变量名由字母、数字、下划线组成

    ​ 2)不能以数字开头

    ​ 3)最好能够做到见名知义

  2. 请写出Python语言有哪些优点。

    答:相对C、JAVA而言,python语言比较简洁。

    比如:在打印’hello world’的时候,python只需要一行代码就可以完成打印功能。

    print('hello world!')
    
  3. 请写出Python常⻅的应用领域。

    答:数据分析、人工智能、办公自动化

  4. 写出你对今日授课内容中有疑问的地方(或者觉得有困难的知识点)。

    答:无。

三、作业2

day3 数据类型和运算符作业

选择题

  1. print(100 - 25 * 3 % 4) 应该输出什么? (B)

    A. 1

    B. 97

    C. 25

    D. 0

  2. Python不支持的数据类型有(A)。

    A. char

    B. int

    C. float

    D. list

  3. (多选)n = 6784,以下能够获取到7 的方法有(C、D)。

    A. n / 1000 % 100

    B. n % 1000 / 100

    C. n // 100 % 10

    D. n // 10 % 100 // 10

  4. 运行以下程序,当从键盘上输入12,运行结果是(A)。

    x = (input())
    print(type(x))
    

    A. <class 'str'>

    B. <class 'int'>

    C. 出错

    D. class 'dict'

  5. 下列表达式的运算结果是( D) 。

    a = 100
    b = False
    print(a * b > -1)
    

    A. False

    B. 1

    C. 0

    D.True

填空题

  1. 在Python中表示空类型的是(None)。

  2. 查看变量中数据的类型的函数名是(type())。

  3. 已知x = 3 == 3,执行结束后,变量x的值为(True)。

  4. 已知 x = 3,那么执行语句 x += 6 之后,x的值为(9)。

  5. 表达式 3 ** 2 的值为(9),表达式 3 * 2的值为(6),表达式 4 ** 0.5 的值为(2.0)。

编程题

  1. 写出判断一个数是否能同时被3和7整除的条件语句, 并且打印对应的结果。

    例如:输入 21 打印 True, 输入 9 打印 False。
    
    num = int(input('请输入一个整数:'))
    # 写法1:
    print('能同时被3和7整除', num % 3 == 0 and num % 7 == 0)
    # 写法2:
    print('能否同时被3和7整除:', not (num % 3 == 0 and num % 7 != 0) or (num % 7 == 0 and num % 3 != 0) or (num % 3 != 0 and num % 7 != 0))
    
  2. 写出判断一个数是否能够被3或者7整除,但是不能同时被3或者7整除的条件语句, 并且打印对应的结果。

    例如:输入 14 打印 True, 输入 4 打印 False, 输入 21 打印 False。
    
    num = int(input('请输入一个数字:'))
    print((num % 3 == 0 or num % 7 == 0) and (num % 21 != 0))
    
  3. 输入年,写代码判断输入的年是否是闰年,并且打印对应的结果 。(是闰年的条件: 能被4整除但是不能被100整除或者能够被400整除的年)

    例如:输入 2020 打印 True, 输入 2011 打印 False
    
    year = int(input('请输入年份:'))
    print('是否是闰年?', (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0))
    
  4. 假设今天的上课时间为15678秒,编程计算今天上课时间是多少小时,多少分钟,多少秒;以‘XX时XX分XX秒’的方式表示出来。

    例如: 时间 67 秒  —> 017 秒
        
    time = int(input('请输入需要计算的时间(单位:秒):'))
    hour = time //3600
    minute = time % 3600 //60
    second = time % 60
    print(f'{hour}{minute}{second}秒')
    
  5. 定义两个变量保存一个人的身高和体重,编程实现判断这个人的身材是否正常!

    公式: 体重(kg)/身高(m)的平方值 在18.5 ~ 24.9之间属于正常。

    例如: 输入体重: 55, 输入身高:1.55, 输出: True
                
    weight = float(input('请输入您的体重(kg):'))
    height = float(input('请输入您的身高(m):'))
    print('是否健康?', 18.5 <= weight / (height * height) < 24.9)
    

简答题

  1. Python内置数据类型有哪些?

    答:int(整型)–相当于数学中的整数

    ​ str(字符串型)–必须用引号引起来

    ​ float(浮点型)–相当于数学中的小数

    ​ bool(布尔型)–只有True 和False两个返回值

  2. 写出你对今⽇日授课内容中有疑问的地⽅方(或者觉得有困难的知识点)。

    答:1)// 和 %的使用容易搞混,分不太清楚。 2)not的用法

最后

以上就是端庄店员最近收集整理的关于day2-变量和运算符一、笔记整理二、作业1三、作业2的全部内容,更多相关day2-变量和运算符一、笔记整理二、作业1三、作业2内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(53)

评论列表共有 0 条评论

立即
投稿
返回
顶部