博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第三天运算符--三元操作符
阅读量:5293 次
发布时间:2019-06-14

本文共 4293 字,大约阅读时间需要 14 分钟。

运算符

连接操作数之间符号

算数运算符

+,-,,/,%,*(幂运算),//(地板除)

1/2

0.5

# 除法和取余a = 1 / 2b = 10 % 3    # 取余,用来计算整除  判断1~100之间偶数  n % 2 == 0print(a)print(b)
0.51
# 计算2的3次方  2^3a =  4 ** 3print(a)
64
# 地板除  
<取商>
a = 4 // 2.0 # 地板除,获取结果的整数部分print(a)

2.0

算数运算符优先级

  • 先乘除,后加减
  • 小括号解决一切问题(当你优先级不清楚的时候,用小括号即可)
a = (3 - 2*2**4) / 5b = 32/5print(a)print("计算结果:%.2f" % a)
-3.4000000000000004计算结果:-3.40

练习

    1. 温度转换(华氏温度,摄氏温度,开氏温度)。
    2. 摄氏温度:5.0/9.0 X(华氏温度-32)
    3. 开氏温度:5.0/9.0 X(华氏温度-32)+ 273.15
    4. 今天摄氏温度37度,求华氏温度和开氏温度
    5. 审题: 摄氏温度 37 = 5.0/9.0 X(华氏温度-32)==> 37 X 9.0/5.0=华氏温度-32 ==>华氏温度=37 X 9.0/5.0 + 32
      然后把求到的华氏温度带入开氏温度公式,就可以求出开氏温度
te = 37fah = 37 * 9.0/5.0 +32ko = (fah-32)*5.0/9.0+273.15print("37°转换成华氏温度是:%s" % fah)print("37°转换成开氏温度是:%s" % ko)

 

37°转换成华氏温度是:98.637°转换成开氏温度是:310.15

重要点

算数运算符需要优先级和%

 

赋值运算符

a = 1 # 把1赋值给变量a

=,+=,-=,= *= /= //=

b = a+1

 

a = 1 a += 1   # a+=1  a = a+1 print(a)

2

# 批量赋值a,b,c = 1,2,3print(a)print(b)print(c)
123
# 交换两个的变量的值
<要求点>
a = 1b = 2# 其他语言的写法# c = a# a = b# b = ca,b = b,aprint(a)print(b)
21

练习

  • 半径为r=2.5的圆,求周长和面积
  • 如果是球,求体积 (4/3)πr^3
# 0.1版本写法  硬编码r = 2.5c = 2 * 3.14 * rs = 3.14 * r**2print(c)print(s)
15.70000000000000119.625
 
# 02版本写法  拒绝硬编码r = 2.5pi = 3.14c = 2 * pi * rs = pi * r**2v = (4/3)*pi * r**3print(c)  # 记住格式化print(s)print(v)
15.70000000000000119.62565.41666666666667

求时间

  • 从今天的00:00:00起,已经过去了27623秒,求现在是几时几分几秒
  • 分析:

    • 一个小时是3600s
      • 一分钟60s
  • 从现在开始,经过XXX时间,是几号~~~
seconds = 27623hour = seconds // 3600   # 得到小时数minsS = seconds % 3600   # 得到剩下的秒数mins = minsS // 60ss = minsS % 60print("%d时%d分%d秒" % (hour,mins,ss))
7时40分23秒

比较运算符

< >= <= != ==

比较运算符返回的结果是布尔值

1 < 2
True

逻辑运算符

js中,也是其他语言中 && || !

或且非

and or not

 

1<2 and 2<3  # 你把and当成*号,然后把true当成1,把false当成0# and 符号,要求两侧必须为true才是true 有一个假就是false
True
3<=2 and 1>2
False
# or运算符1< 2 or 2>1   # 你把and当成+号,然后把true当成1,把false当成0# or 符号,要求两侧有一个为true才是true
True
not 1<0
True

逻辑运算符中的短路操作

and *

  • 1 < 0 and 2>1 # 你们要注意,千万不要在短路的后面写重要代码
  • 1 > 0 or false
 

特殊运算符

邪性运算符

  • is
  • is not
  • del

is 要求地址和值都一样 # 是IDE给我们做了特殊的处理

a = 2345b = 2345print(id(a))  # id你理解成在内存中编号 print(id(b))a is b
19970504045281997050404080
a = 2 # python会提前预制一些值,-5,270  内存中的位置是一样的b = 2print(id(a))  # id你理解成在内存中编号 print(id(b))a is b
15344220641534422064
True
aaa = 123ccc = aaa + 2# .... ... del aaa  # 内存清理一下,360清除垃圾 ,你即使使用了del,那么原则上,python不是立马删除的,他是放到一个队列中,然后顺序删除aaa

 

标准输入和输出

  • input
  • print

 

age = int(input("请输入你的年纪"))  # input得到用户的输入是字符串# 需要判断一下这个字符串是不是全部数字  isdigitprint("你的年纪是:%d" % age)
请输入你的年纪12你的年纪是:12

程序结构

  • 所有的编程语言,顺序,分支,循环

  • 编程不是一门艺术(独一无二),工业产品

  • 2025中国制造 编程(人工智能,大数据,云计算... ...) 儿童编程 编程就是一门技能,和现在的考驾照一样。

  • 顺序,从上到下一步一步执行

  • 分支,满足条件之后,就执行对应的代码模块
  • 循环,满足条件之后,不断的重复执行相同功能的代码块

if 语句

语法:

if (条件表达式):    指定代码块

Python代码格式化问题 tab还是空格的问题 python2.x 时代,tab默认4个空格,tab和空格没有严格要求tab=4个空格

python3.x 时代,tab就是tab 空格就是空格

python是仪式感特别强的语言。

pass语句

当你不知道干啥的时候,但是代码写了还不想删除,就写pass

if else

满足条件就执行if不满足就执行else elif

else对应关系

在python这门语言就不存在对应不明确的情况

if(xxx){if(xxaa){}}else{}

SytaxError

 

if 2 > 1:    # 想要执行一些代码,但是你没有想好    # 插入数据库    # 执行一个网络爬虫    #  。。。。     passelse:    pass     print("xxxx")
xxxx

根据成绩给出评分

  1. 得到90分以上,优秀
  2. 80分以上,中等
  3. 70份以上,差

 

score = int(input("请输入你的成绩"))if score > 90:    print("优秀")if score > 80 and score<=90:    print("中等")if score > 70 and score<=80:    print("差")
请输入你的成绩71差
# 如果大于90分,给优秀# 如果小于90分,两种状态,大于60分给及格,小于60分,给不及格score = int(input("请输入你的成绩"))if score > 90:    print("优秀")else:   # 研究一下    if (score>60):        print("及格了")    else:        print("不及格")
请输入你的成绩59不及格

小练习

模拟上海出租车收费系统

  1. 3公里以内,收取基本起步费用13元
  2. 超过3公里,则2.3/km
  3. 空驶费,超出15公里,每公里加收单价50%空驶费用,即3.45

需求:输入驾驶里程后计算费用

.

km = input("请输入你的里程数:")km = float(km)   # 2.1 浮点数if km <= 3:    print("你的费用是13")if km > 3 and km <=15 :    price = 13 + (km-3) * 2.3    print("你的价格是:¥%.2f" % price)if km >15 :    price = 13 + (15-3) * 2.3 + (km-15) * 3.45    print("你的价格是:¥%.2f" % price)
请输入你的里程数:17你的价格是:¥47.50

三元操作符

python 压根没有三元运算符,遭到了其他语言的鄙视。

guido van

元?操作数

  • 1+1 二元操作符 - 二元操作符

一元 not not 1

三元操作符 ? :

 

a = 2 if 1>1 else 3   # 三元运算符  写法    a = 1 if a else b#if 2> 1#    a = 2#else #   a =3 a

3

练习

练习1

  • a,b两个数由用户输入
  • 比较大小,把最大值存入变量c

练习2

  • a,b,c由用户输入
  • 比较大小
a = int(input("请输入a:"))b = int(input("请输入b:"))c = a if a>b else bprint(c)
请输入a:22请输入b:1122
a = int(input("请输入a:"))b = int(input("请输入b:"))c = int(input("请输入c:"))# 三元运算符  陈独秀 d = (a if a>b else b) if (a if a>b else b) > c else cprint(d)
请输入a:66请输入b:22请输入c:1166

转载于:https://www.cnblogs.com/qiaotianzi/p/9371696.html

你可能感兴趣的文章
使用solid works 助力NBA | 操作案例
查看>>
2019年春节第一天上班
查看>>
task_statm反映虚拟内存,物理内存
查看>>
更改Visual Studio 2010的主题设置
查看>>
ecslipe cdt lib link
查看>>
Linux下的截图方法
查看>>
idea从gitlab获取代码
查看>>
使用 RUP 管理小型项目和团队
查看>>
七天学会ASP.NET MVC (一)——深入理解ASP.NET MVC
查看>>
php简单常用的API
查看>>
如何在 Mac 上创建一个 cocos2d 的项目
查看>>
kengenme2
查看>>
Android_adb详解
查看>>
Sitecore CMS中配置模板部分
查看>>
机器学习(一)——K-近邻(KNN)算法
查看>>
(总结)Nginx/LVS/HAProxy负载均衡软件的优缺点详解
查看>>
大數據超時處理。
查看>>
动态规划之切钢条
查看>>
# 第四十五篇 网络编程之CS架构
查看>>
C语言中assert的使用
查看>>