Python-Level1-day02:数据基本运算(基础知识;变量及其内存图;数据类型,运算符)

1 基础知识

pycharm 常用快捷键

  1. 移动到本行开头:home 键

  2. 移动到本行末尾:end 键

  3. 注释代码:ctrl + /

  4. 复制行:ctrl +d

  5. 删除行:shift + delete

  6. 选择列:shift + alt +鼠标左键(alt +鼠标左键 复制光标)

  7. 移动行:shift + alt + 上下箭头

  8. 代码格式化:ctrl+alt+l

注释:给人看的,通常是对代码的描述信息。

  1. 单行注释:以#号开头。

  2. 多行注释:三引号开头,三引号结尾。

函数:表示一个功能,函数定义者是提供功能的人,函数调用者是使用功能的人。例如:

  1. print(数据) 作用:将括号中的内容显示在控制台中

  2. 变量 = input(“需要显示的内容”) 作用:将用户输入的内容赋值给变量

"""
    程序标题:汇率转换器
"""
# 1 获取数据
usd = float(input("Please enter US dollars"))
​
# 2 逻辑计算
cny = usd * 6.473
​
# 3 结果输出
print(str(usd) + "dollers = " + str(cny) + "RMB")
​

"""
    函数 print
        1.字面意思:打印(内容)
        2.作用功能:将程序内容显示到终端
        3.使用语法:print("内容")
​
"""
print("hello world")
​

"""
    练习 1: 在终端中显示古诗“登高”
"""
print("           登高 ")
print("         作者:杜甫 ")
print(" 风急天高猿啸哀,渚清沙白鸟飞回。")
print(" 无边落木萧萧下,不尽长江滚滚来。")
print(" 万里悲秋常作客,百年多病独登台。")
print(" 艰难苦恨繁霜鬓,潦倒新停浊酒杯。")
​

"""
 函数 - input
    1.字面含义:输入结果=输入东西("提示信息")
    2.功能作用:通过界面输入数据与程序交互
    3.语法格式:name = input("please")
"""
name = input(" please ")
print("hello " + name)
​

"""
    练习 2:判断英文句子成分:I kiss you
​
    效果:
        请输入 I kiss you 的主语:I
        请输入 I kiss you 的谓语:kiss
        请输入 I kiss you 的宾语:you
        您输入的主语是:I,谓语是:kiss,宾语是:you
"""
subject = input("subject:")
predicate = input("predicate:")
object = input("object:")
print("subject:" + subject + ";predicate:" + predicate + ";object:" + object)
​

2 变量及其内存图

变量

  1. 定义:关联一个对象的标识符。

  2. 命名:必须是字母或下划线开头,后跟字母、数字、下划线。不能使用关键字(蓝色),否则发生语法报错

  3. 建议命名:字母小写,多个单词以下划线隔开。class_name = “xxx”

  4. 赋值:创建一个变量或改变一个变量关联的数据。

  5. 语法:变量名 = 数据

变量名 1 = 变量名 2 = 数据

变量名 1, 变量名 2, = 数据 1, 数据 2

"""
        变量
            作用:在内存中操作数据
            
        程序运行在哪里?--内存
        程序(行为)在处理什么?--数据
        语法:变量名称 = 数据
​
        赋值号= : 把右边的数据地址复制一份给左边
        python中的变量不存储数据本身,只存储它的地址,
"""
# 创建变量
name01 = "悟空"
name02 = "八戒"
# 修改变量
name02 = "唐僧"
# 产生新数据
name03 = name02 + name01
# 传递数据地址
name04 = name03
​
​
​

img

"""
    变量的内存图练习,说出打印结果
"""
​
name_of_hubei_province = "湖北"
name_of_hunan_province = "湖南"
name_of_hunan_province = "湖南省"
name_of_hunan_province = name_of_hubei_province
print(name_of_hunan_province)  # ?
​
​

img

del 语句

  1. 语法: del 变量名 1, 变量名 2

  2. 作用:用于删除变量(不是删除数据),同时解除与对象的关联.如果对象计数为0则释放对象。

  3. 自动化内存管理的引用计数:每个对象记录被变量绑定(引用)的数量,当为 0 时被销毁。

"""
   删除 del
"""
name02 = name01 = "悟空"
del name01  # 删除变量 数据存在(数据引用计数为0)
del name02  # 删除数据 数据不存在(数据引用计数为0)
#print(name02) 报错 变量不存在
​

"""
    画出下列代码内存图,说出终端显示结果
"""
name_of_beijing, region = "北京", "市"
# 拼接后成为一个独立的数据,不受原数据发生的变化影响
name_of_beijing_region = name_of_beijing + region
region = "省"
print(name_of_beijing_region)  # 北京市
del name_of_beijing
print(name_of_beijing_region)  # 北京市

3 核心数据类型

在 python 中变量没有类型,但关联的对象有类型。

整形 int

  1. 表示整数,包含正数、负数、0。如: -5, 100, 0

  2. 字面值:十进制:每位用十种状态计数,逢十进一,写法是 0~9。

二进制:每位用二种状态计数,逢二进一,写法是 0b 开头,后跟 0 或者 1。

八进制:每位用八种状态计数,逢八进一,写法是 0o 开头,后跟 0~7。

十六进制:每位用十六种状态计数,逢十六进一,写法是 0x 开头,后跟 0~9,A~F,a~f

浮点型 float

  1. 表示小数,包含正数、负数,0.0。

  2. 字面值:小数:1.0 2.5

科学计数法:e/E (正负号) 指数 1.23e-2 (等同于 0.0123) 1.23456e5(等同于 123456.0)

字符串 str:是用来记录文本信息(文字信息)。 字面值:双引号

布尔 bool:用来表示真和假的类型 True 表示真(条件满足或成立),本质是 1 False 表示假(条件不满足或不成立),本质是 0

数据类型转换

  1. 转换为整形: int(数据)

  2. 转换为浮点型:float(数据)

  3. 转换为字符串:str(数据)

  4. 转换为布尔:bool(数据) 结果为 False:bool(0) bool(0.0) bool(None)

  5. 混合类型自动升级:1 + 2.14 返回的结果是 3.14 ;1 + 3.0 返回结果是: 4.0

"""
    核心数据类型
        str  int  float
    类型转换
        结果 = 目标类型(待转数据)
"""
# 数据类型
# 1. 字符串str:存储文字
name = "悟空"
str_number = "10" + "1"  # 字符拼接(没有数学运算)
print(str_number)  # "101"
​
# 2. 整形int:存储整数
int_number = 10 + 1
print(int_number)  # 11
​
# "10" + 1 # 在Python语言中,不支持str与int直接+运算
​
# 3. 浮点型float:存储小数
float_number = 10.1
​
# 类型转换
# age = int(input("请输入您的年龄:"))
# print("明年您" + str(age +1) + "岁了")
​
# 1. str --> int
result01 = int("3")  # 3
# int --> str
result02 = str(3)
​
# 2. str --> float
result03 = float("1.2")
#    float --> str
result04 = str(1.2)
​
# 3. int --> float
result05 = float(15)  # 15.0
#    float --> int
result06 = int(1.93)
print(result06)  # 1 向下取整
​
# 4. 字符串转换为其他类型时注意:该字符串必须是该类型的字符表达形式(长得像)
# result07 = int("1.93") 不行
# result08 = float("abc") 不行
result09 = float("5")
print(result09)  # 5.0
​
print(12)  # 可以直接打印数值类型
print("年龄是:" + str(12))  # 因为要按照固定格式显示,所以类型转换
​

"""
    练习:在终端中输入商品单价、购买的数量和支付金额。
         计算应该找回多少钱。
    效果:
    请输入商品单价:5
    请输入购买数量:3
    请输入支付金额:20
    应找回:5.0
"""
# 1. 获取数据
price = float(input("请输入商品单价:"))
count = int(input("请输入购买数量:"))
money = float(input("请输入支付金额:"))
# 2. 逻辑计算
result = money - price * count
# 3. 显示结果
print("应找回:" + str(result))
​

4 运算符

算术运算符

+ 加法 - 减法 * 乘法 / 除法:结果为浮点数 // 整除:除的结果去掉小数部分 % 求余 ** 幂运算

优先级从高到低: () ** * / % // + -

增强运算符

y += x 相当于 y = y + x;y -= x 相当于 y = y - x;y *= x 相当于 y = y * x;y /= x 相当于 y = y / x;

y //= x 相当于 y = y // x;y %= x 相当于 y = y % x;y * *= x 相当于 y = y * * x

比较运算符

< 小于;<= 小于等于;> 大于;>= 大于等于;== 等于;!= 不等于;

返回布尔类型的值;比较运算的数学表示方式:0 <= x <= 100

逻辑运算符:与 and ;或or,非not

短路运算:一但结果确定,后面的语句将不再执行。因此复杂运算判断放后面

身份运算符:语法: x is y ,x is not y

作用: is 用于判断两个对象是否是同一个对象,是时返回 True,否则返回 False。

is not 的作用与 is 相反

优先级高到低:算数运算符;比较运算符;增强运算符;身份运算符;逻辑运算符

"""
    算数运算符
        +  -  *  /  //  %  **
    增强运算符:在算数运算符基础上增加了对自身赋值的功能
        +=  -=  *=  /=  //=  %=  **=
"""
# 1. 算数运算符
number01 = 5
number02 = 2
# 幂运算 5 的 2次方
print(number01 ** number02)  # 25
print(number01 // number02)  # 2
print(number01 / number02)  # 2.5
print(number01 % number02)  # 1
​
# 2. 增强运算符
number03 = 10
number03 + 5
print(number03)  # 10
​
number04 = 10
# number04 = number04 + 5
number04 += 5
print(number04)  # 15
​

"""
    练习1:在终端中输入一个疫情确诊人数再录入一个治愈人数,
        打印治愈比例
    格式:治愈比例为xx%
    效果:
    请输入确诊人数:500
    请输入治愈人数:495
    治愈比例为99.0%
"""
confirmed = int(input("请输入确诊人数:"))
cure = int(input("请输入治愈人数:"))
cure_rate = cure / confirmed * 100
print("治愈比例为" + str(cure_rate) + "%")
​

"""
    练习2:古代的秤,一斤十六两。
    在终端中获取两,计算几斤零几两。
    效果:
    请输入总两数:100
    结果为:6斤4两
"""
total_liang = int(input("请输入总两数:"))
jin = total_liang // 16
liang = total_liang % 16
print("结果为:" + str(jin) + "斤" + str(liang) + "两")
​

"""
    练习3:
    匀变速直线运动的速度与位移公式:
        位移 =  初速度 × 时间 + 加速度 * 时间的平方 / 2
        已知(在终端中录入):位移、时间、初速度
        计算:加速度
"""
# (位移 -初速度 × 时间) * 2 / 时间 ** 2 =  加速度
s = float(input("请输入位移:"))
v0 = float(input("请输入初速度:"))
t = float(input("请输入时间:"))
a = (s - v0 * t) * 2 / t ** 2
print(a)
​

"""
    练习:在终端中输入一个四位整数,计算每位相加和。
    例如:录入1234,打印1+2+3+4结果
    效果:
    请输入四位整数:1234
    结果是:10
"""
number = int(input("请输入四位整数:"))
# unit01 = number % 10  # 个位
# unit02 = number // 10 % 10  # 十位
# unit03 = number // 100 % 10  # 百位
# unit04 = number // 1000  # 千位
# result = unit01 + unit02 + unit03 + unit04
​
# 建议
result = number % 10
result += number // 10 % 10
result += number // 100 % 10
result += number // 1000
print("结果是:" + str(result))
​

img

img

作业

作业
1. 三合一(文档/代码demo/图片)
2. 当天练习独立完成(exercise.py)
3. 画出下列代码内存图,说出终端显示结果
    1)
        data01 = 100
        data02 = 200
        data03 = data01 + data02
        data01 = 200
        print(data03) # ?
    2)
        bridegroom_name = "武大郎"
        bride_name = "潘金莲"
        temp = bridegroom_name
        bridegroom_name = bride_name
        bride_name = temp
        print("交换后的新郎:" + bridegroom_name)  # ?
        print("交换后的新娘:" + bride_name)  # ?
​
4. 根据父母身高,预测儿子身高.
    步骤:获取父亲身高
        获取母亲身高
        显示儿子身高
    公式:(父亲身高+母亲身高)*0.54
​
5. 温度转换器:
    摄氏度 = (华氏度 - 32) 除以 1.8
    在终端中录入摄氏度,计算华氏度
​
6. 根据工资计算个人社保缴纳费用
    步骤:在终端中录入工资,根据公式计算,显示缴纳费用
    公式:养老保险8% + 医疗保险2% + 3元 + 失业保险0.2% + 公积金12%
​
7. 阅读
    链接:https://pan.baidu.com/s/1JYK5A91CvBg36IhRphiyrg
    提取码:qitx
    程序员的数学第一章
    Python编程:从入门到实践 第一章
​
​

1.

 

 

 

"""
    根据父母身高,预测儿子身高.
    公式:(父亲身高+母亲身高)*0.54
"""
# 1.获取数据
father_height = float(input("请输入父亲的身高(厘米):"))
mother_height = float(input("请输入母亲的身高(厘米):"))
​
# 2.逻辑计算
son_height = (father_height + mother_height) * 0.54
​
# 3.显示结果
# 因为需要字符串与数值拼接,所以数值转换为字符串str(son_height)
print("预测儿子的身高是:" + str(son_height) + "厘米")
# 因为直接输出数值,所以不用转换.
print(son_height)
​

"""
    温度转换器:
        摄氏度 = (华氏度 - 32) 除以 1.8
        (1)在终端中录入摄氏度,计算华氏度
​
        摄氏度 * 1.8 +32= 华氏度
"""
# 公式转换:华氏度 = 摄氏度 × 1.8 + 32
centigrade_degree = float(input("请输入摄氏度:"))
fahrenheit_degree = centigrade_degree * 1.8 + 32
print("华氏度:" + str(fahrenheit_degree))
​

"""
    根据工资计算个人社保缴纳费用
    步骤:在终端中录入工资,根据公式计算,显示缴纳费用
    公式:养老保险8% + 医疗保险2% + 3元 + 失业保险0.2% + 公积金12%
"""
salary_before_tax = float(input("请输入税前工资:"))
social_insurance = salary_before_tax * (0.08 + 0.02 + 0.002 + 0.12) + 3
print("个人需要缴纳社保费用:" + str(social_insurance))
​
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

dpq666dpq666

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值