pbase-day02

day01回顾:
  变量:
    创建变量(赋值语句)
      变量  = 表达式
    修改变量
      变量  = 表达式
    删除变量
      del 变量名
python 起源
应用领域
优点:
缺点:
  执行速度慢
  不能封闭源代码

www.python.org
版本 python v2 / v3

解释执行器 python3 (CPython)
CPython/Jython/IronPython

运行:
  1. python3 文件名.py
  2. python3 <回车>
     >>> 
数据类型:
  数字: 整数int, 浮点型数float, 复数complex, 布尔型数(True/False)
  字符串str: "文字内容"
  列表list
  ...

None 空值对象
运算符:
  + - * /  //  %  **
  is / is not

print() 函数
id(x)  返回对象的内存地址
  变量占用内存吗?  1byte(字节) = 8bit位

复合赋值算术运算符:
  +  -  *  / ...
  += -= *= /= //= %= **=

day02笔记
比较运算符:
  <   小于
  <=  小于等于
  >   大于
  >=  大于等于
  ==  等于
  !=  不等于
上述比较运算符的优先级一致,按照执行顺序从左到右依次执行
  语法:
    左表达式 < 右表达式
  说明:
    比较运算符返回布尔类型的值
  例:
    100 < 200  # 返回True
    100 >= 200 # 返回False
  比较运算符的数据表示:
    0 <= 30 < 100  # 

数据对象的构造(创建)函数
  float(obj)  用字符串或数字转换为浮点数,如果不给出参数,则返回0.0
  int(x,base=10)    #这里表示的是“数值”,进制数(最高识别36进制)
  int(x=0)       用数字或字符串转换为整数,如果不给出参数,则返回0
  complex(r=0.0, i=0.0) #用数字创建一个复数(实部为r,虚部为i)
  bool(x)     #用x创建一个布尔值(True/False)

函数调用语法规则
  函数名(传参列表)
    说明: 函数调用是表达式,一定会返回一个对象的引用关系(或者返回None)

bool(x) 返回假值的情况:
  None  空值 
  False  布尔假值
  0   0.0  0j  所有的数字0
  ---- 以下内容后面会讲------
  ''  空字符串
  ()  空元组
  []  空列表
  {}  空字典
  ...
  注意:
    >>> bool(' ')
    True
    >>> bool('')
    False

练习:
  将数字3.14 用变量pi绑定
  将pi变量转为整数 用变量i绑定
  将 pi 变量与 i 变量相减,结果用变量 f 绑定
  1. 判断 f 是否等于 0.14
  2. 删除所有的变量
    (用交互模式来做)
#答案
  >>> pi=3.14
  >>> i=int(pi)
  >>> i
  3
  >>> f=pi-i
  >>> f #浮点数中的精度无法进行精确,精度有损失
  0.14000000000000012
  >>> f==0.14
  False
  >>> del pi
  >>> del i
  >>> del f
注意:python中整数的计算无误差,当然内存要能够承受的整数长度

预置(内建)的数值型函数
  abs(x)   取x的绝对值,只对实数取绝对值,对于复数不起作用
  round(number[,ndigits])  对数值进行"四舍五入", ndigits是小数向右取整的位数,负数表示向左取整
    >>> round(1234.5)
    1234
  注意:在python中是以二进制进行存储,在进行二进制存储的时候,采用round函数,并不是真正意义上的四舍五入,在一定程度上有部分精度损失
  pow(x, y[, z=None])  相当于 x**y 或 x**y%z

help() 查看函数绑助
  >>> help(函数名)


语句 statement
  语句是python执行的最小单位
  语句由一些表达式组成,通常一条语句可以独立执行来完成一部分事情并形成结果
    (一条语句建议写在一行内)
  多条语句写在一行内需要用分号(;) 分开
  示例:
    print("hello")
    x = 100 + 200
    # 写在一起为:
    print("hello"); x = 100 + 200

语句的显示换行
  示例见:
    statement_newline.py
  折行符 \   (读作:反斜杠)
    折行符必须放在一行的末尾,来示意解释执行器,下一行也是本行的语句
  换行显示可以使用()来进行隐式换行
  # statement_newline.py
  # 此示例示意语句的显示折行
  x = 1 + (2 * 3) + (3 + 4 + 5 + 6 + 7)\
  + 3.14 + 500
  y=(1 + (2 * 3) + (3 + 4 + 5 + 6 + 7)
  + 3.14 + 500)
  print(x)
  print(y)
  535.14
  535.14


语句的隐式换行
  所有的括号的内容换行称为隐式换行
  括号: ()  []  {}

基本输入输出函数
基本输入函数 input
  作用:
    从标准输入设备上(默认为键盘)读取一个字符串
    (末尾的换行字符会被删除)
  格式:
    input('提示字符串')
  说明:
    返回输入的字符串(仅python3)
    '提示字符串'可以省略不写
  #   input.py
  name=input("请输入您的姓名:")
  print("您刚才输入的姓名是:",name)

基本输出函数print
  作用:
    将一系列的值以字符串形式输出到标准输出设备上(默认是终端)
  格式:
    print(value,..., sep=' ', end='\n', file=sys.stdout, flush=False)
  关键字参数:
    sep  两个值之间的分隔符,默认为一个空格' ',使用单引号或是双引号都可以
    end  输出完毕后在字符流末尾自动追加一个字符串,默认为换行符'\n',记住换行符是\n
      ---- 以下两个参数后面会讲-----
    file: 文件流对象,默认为(sys.stdout)
    flush: 是否立即进行输出
    print("aaa","\n\n\n\n")#打印之后空4行

练习:
  1. 输入两个整数,分别用变量x, y来绑定
    1) 计算这两个数的和,并打印结果
    2) 计算这两个数的积,并打印结果
    3) 计算 x 的 y 次并打印结果
  2. 分三次输入当前的小时,分钟,秒数
    在终端打印出距离 0:0:0过了多少秒?
  


if 语句
  问题:
    有两条语句:
      print("是偶数")
      print("是奇数")
    如何只让其中的一条语句执行,另一条不执行
    x=input("输入一个整数:")
    x=int(x)
    if(x%2==0):
      print(x,"是一个偶数")
    else:
      print(x,"是一个奇数")

作用:
  让程序根据条件选择性的执行某条语句或某些语句

语法:
  if 真值表达式1:
      语句块1
  elif 真值表达式2:
      语句块2
  elif 真值表达式3:
      语句块3
  ....
  else:
      语句块4
说明:
  elif 子句可以有0个,1个或多个
  else 子句可以有0个或1个,且只能放在此if语句的最后
示例见:
  if.py

练习:
  任意输入一个数
    1) 判断这个数是否大于100
    2) 判断这个数是否小于0
    3) 判断这个数是否在 50 ~ 150 之间
答案:
      x=input("输入一个整数:")
      x=int(x)
      if(x>100):
          print(x,"大于100")
      else:
          print(x,"不大于100")

      if(x<0):
          print(x,"小于0")
      else:
          print(x,"不小于0")

      if(50<=x<=150):
          print(x,"在 50 ~ 150 之间")
      else:
          print(x,"不在 50 ~ 150 之间")

if-elif-else示例见:
  if_elif_else.py

练习:
  1. 输入一个季度(1 ~ 4), 输出这个季度有哪儿几个月,如果输入不是1~4的数,则提示用户您输错了

  2. 输入一年中的月份(1~12), 输出这个月在哪儿个季度.如果输入的是其它的数,则提示您输错了
答案:
  #习题1
  x=input("请输入一个季度:")
  x=int(x)
  if x==1:
      print("1月,2月,3月")
  elif x==2:
      print("4月,5月,6月")
  elif x==3:
      print("7月,8月,9月")
  elif x==4:
      print("10月,11月,12月")
  else:
      print("您输错了")

  #习题2
  x=input("请输入一个月份:")
  x=int(x)
  if 1<=x<=3:
      print("春季")
  elif 4<=x<=6:
      print("夏季")
  elif 7<=x<=9:
      print("秋季")
  elif 10<=x<=12:
      print("冬季")
  else:
      print("您输错了")


if语句的真值表达式:
  if 100:
      print("是真值")
  等同于:
  if bool(100):
      pritn("是真值")

if 语句的嵌套
  if 语句本身是由多条语句组成的一条复合语句,if语句可以作为语句嵌套到另一个语句的内部

  示例见:
    if_embed.py


练习:
  1. 写一个程序,输入一个数,用if语句计算这个数的绝对值,并打印出来
    (要求: 不允许用abs(x) 函数)
答案:
  x=input("请输入一个数:")
  x=float(x)
  if x>=0:
      print(x)
  else:
      print(-x)

条件表达式:
  语法:
    表达式1 if 真值表达式 else 表达式2
  作用:
    根据真值表达式的取值(True/False) 来决定执行表达式1或表达式2并返回结果
  示例见:
  if_express.py
  # if_express.py

  # 此示例示意条件表达式的语法和用法
  # 商场促销 满 100 减 20

  money = int(input("请输入商品总金额: "))

  pay = money-20 if money >= 100 else money

  print("您需要支付: ", pay, '元')

练习:
  写程序,输入一个数,用条件表达式计算这个数的绝对值并打印出来
答案:
  x=float(input("请输入一个数:"))
  print(x) if x>=0 else print(-x)

pass 语句
  作用:
    通常用来填充语法空白
    pass 又名空语句
  语法:
    pass
  示例见:
    pass.py
  # pass.py

  # 让用户输入一个学生成绩(0~100)之间,判断是否为有效成绩
  x = int(input("请输入成绩:"))

  if 0 <= x <= 100:
      pass
  else:
      print("输入成绩不合法")

  if not (0 <= x <= 100):
      print("输入成绩不合法")

  

布尔运算:
  运算符:
    not    and   or

布尔非操作 not 
  语法:
    not x
  作用:
    对x进行布尔取非,如bool(x) 为True,则返回False,否则返回True

  示例:
    not True  # False
    not False # True
    not 0     # True
    not 100   # False

布尔与操作 and
  语法:
    x and y
    注: x, 代表表达式
  作用:
    优先返回假值对象,当x的布尔值为False时返回x,否则返回y
  示例:
    True and True    # True
    True and False   # False
    False and True   # False
    False and False  # False

布尔或操作 or
  语法:
    x or y来绑定
  作用:
    优先返回真值对象,如果x为True时返回x,否则返回y
  示例:
    True or True    # True
    True or False   # True
    False or True   # True
    False or False  # False

正负号运算
  +(正号)   -(负号)
  一元运算符(只有一个元素参加运算)

  示例:
    a = 5
    b = -a  # b = -5
    c = +a  # c = 5

# 练习:
#   1. 北京出租车计价器
#     收费标准:
#       3公里以内收费 13 元
#       基本单价 2.3元/公里(超出3公里以外)
#       空驶费: 超过15公里后,每公里加收单价的%50空驶费(即3.45元/公里)
#     要求:
#       输入公里数,打印出费用金额(以元为单位四舍五入)
#习题1
x=float(input("请输入行驶公里数:"))
if x<=3:
    print(13)
elif x<=15:
    print(13+(x-3)*2.3)
else:
    print(13+(x-3)*2.3+(x-15)*2.3*0.5)
#   2. 输入一个学生的三科成绩:
#     打印出最高分是多少?
#     打印出最低分是多少?
#     打印出平均分是多少?
#最高分
x=float(input("请输入成绩1:"))
y=float(input("请输入成绩2:"))
z=float(input("请输入成绩3:"))
if x>=y:
    if x>=z:
        print("最高分",x)
    else:
        print("最高分",z)
else:
    if y>=z:
        print("最高分",y)
    else:
        print("最高分",z)
#最低分
if x<=y:
    if x<=z:
        print("最低分",x)
    else:
        print("最低分",z)
else:
    if y<=z:
        print("最低分",y)
    else:
        print("最低分",z)
#平均分
m1=(x+y+z)/3
print("平均分",m1)
#   3. 给出一个年份,判断是否为闰年并打印结果
#     规则:  每四年一闰,每百年不闰,四百年又闰
#       2016 闰年
#       2100 不是闰年
#       2400 是闰年
# #闰年的判断条件:1、能被4整除,但不能被100整除   2、可以被400整除
x=int(input("请输入年份:"))
if (x%4==0 and x%100!=0) or (x%400==0):
    print(x,"是闰年")
else:
    print(x,"不是闰年")

#   4. BMI(Body Mass Index) 指数,又称身体质量指数
#     BMI公式:  BMI = 体重(公斤) / 身高的平方(米)
#     标准表:
#       BMI < 18.5       体重过轻
#       18.5 <= BMI < 24 正常范围 
#       BMI >= 24         体重过重(超标)
#     输入身高和体重,打印BMI值,并打印体重状况
height=float(input("请输入身高(m):"))
weight=float(input("请输入体重(kg):"))
BMI=weight/pow(height,2)
if BMI<18.5:
    print("体重过轻")
elif 18.5 <= BMI < 24:
    print("正常范围")
else:
    print("体重过重(超标)")
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值