Python的数学基本运算法则运算问题

《笨办法学Python》笔记5-----数字和数学运算 - 简书
《笨办法学Python》笔记5-----数字和数学运算
一、代码分析
# -- coding: utf-8 --
print "I will now count my chickens:"
print "Hens",25 + 30 / 6
#%是求余数
print "Roosters",100 - 25 * 3 % 4
print "Now i will count the eggs:"
print 3 + 2 + 1 - 5 + 4 % 2 - 1 / 4 + 6
print "Is it true that 3 + 2 & 5 - 7?"
print 3 + 2 & 5 - 7
print "What is 3 + 2 ? ", 3 + 2
print "What is 5 - 7 ? ", 5 - 7
print "Oh, that's why it's false."
print "How about some more."
print "Is it greater?", 5 & -2
print "Is it greater or equal?", 5 &= -2
print "Is it less or equal?", 5 &= -2
print "5 / 3=",5 / 3
程序中依然遵循四则运算的运算顺序:先乘除求余后加减。%是求余数运算,也就是两数相除以后余数是多少。注意代码最后一行,5除以3应该约等于1.6666666,但输出显示5 / 3 = 1。整数除整数,结果也取整,若将最后一行分子或分母改为浮点型数字:print "5 / 3=",5.0 / 3则结果将是:5 / 3= 1.二、扩展学习1.算术运算
2.逻辑运算
3.比较(关系)运算
4.赋值运算
6.成员运算
7.身份运算
运算符优先级
能动手就别吵吵
Why Stock Markets CrashThis page intentionally left blankWhy Stock Markets CrashCritical Events in ComplexFinancial SystemsD i d i e r S ...
习题1 print('Hello World!') print('Hello again.') print('I like typing this.') print('This is fun.') print('Yay!Printing.') print('I\'d muc...
Anoperatoris a special symbol or phrase that you use to check, change, or combine values. For example, the addition operator (+) adds two...
背景 一年多以前我在知乎上答了有关LeetCode的问题, 分享了一些自己做题目的经验。 张土汪:刷leetcode是什么样的体验? 慢慢有一些赞和感谢, 备受鼓舞, 于是我把所做过的题目用一个script跑了一下,编辑成一篇文章。这个总结页面是这么规划的: 题目名称(答案...
习题1: 加分题:多打印一行答:Print (‘\n’) 加分题:在一行的起始位置放一个 ‘#’符号,它的作用是什么?答:作用是作为注释,不在运行后显示这一行 加分题:让你的脚本只打印一行答:print ('Hello World!', end=&&)print ('Hel...
01伊诺的梦 伊诺赤脚走在铺满碎石的小路,小路两边布满荆棘。鞋不知到哪里去了,微微突兀的石子,硌得脚好痛,路在前方延伸,爷爷告诉他,在路的尽头他可以看到自己的母亲。 于是伊诺不顾一切向前,任凭石子让自己的脚痛到麻木,任凭荆棘割破身上的衣衫。一只黑色的猫奔到伊诺的脚下,伴着伊...
你想知道每件事情为什么至于如此,如果你理清了这件事情所有的脉络,十分理性的分析好了前因后果,那么你很可能能够得到为什么至于如此的结果。但是这又如何?一切都已经结束了。而且有时候即使你在开始前就弄懂了一切,但是最后你依旧可能发现自己在感情中无能为力。我一直觉得感情中是存在“宿...
作为九零后,我们都已经长大成人,都有自 己的思维方式,成熟不成熟的想法实际不实 际的梦想,也许,在有些人看来可能有些冒 险或者张扬,可是这就是我们所向往的,我 向往的是奔跑在浩瀚的海边和漫步在遥远的 拉萨,一个是童年时的梦想,一个是心灵的 倾诉。 心中有向往的青年,有...
计划今天再看一章节书的,总是在做准备,动动这,动动那,再吃点零食,就是不进入正题,到晚上十点总算是把第一章标注的要点在有道笔记上输入完了。 是惰性?还是什么?说不清楚,总之爱玩的心思意念那么强烈,可能是生理的原因?调整一下状态明天又周一要开始工作了!Python列表与数字的四则运算_Python小屋_传送门
Python列表与数字的四则运算
本文要点在于map()、eval()、repr()等内置函数的运用。>>> def myMap(iterable, op, value): if ((not isinstance(iterable, list)) or
(op not in '+-*/') or
(not isinstance(value, (int, float, complex)))): return 'Error operator' func = lambda i:eval(repr(i)+op+repr(value)) return list(map(func, iterable))>>> myMap(list(range(6)), '+', 3)[3, 4, 5, 6, 7, 8]>>> myMap(list(range(6)), '-', 3)[-3, -2, -1, 0, 1, 2]>>> myMap(list(range(6)), '*', 3)[0, 3, 6, 9, 12, 15]>>> myMap(list(range(6)), '/', 3)[0.0, 0.6, 1.0, 1.7]
觉得不错,分享给更多人看到
Python小屋 微信二维码
分享这篇文章
Python小屋 最新文章扫二维码下载作业帮
3亿+用户的选择
下载作业帮安装包
扫二维码下载作业帮
3亿+用户的选择
python里计算每个数字出现的频数我有一个长array对象(numpy里的),大概是30w个整数(0-9),现在要统计每个数字出现的百分比,请问有没有什么高效的算法?我现在使用最原始的:def cal(classfier):'''返计算并返回一个长度为8的向量,表示每种颜色的百分比'''n0 = 0.0n1 = 0.0n2 = 0.0n3 = 0.0n4 = 0.0n5 = 0.0n6 = 0.0n7 = 0.0l = len(classfier)for i in range(l-1):if classfier[i] == 0:\x05n0 = n0 + 1elif classfier[i] == 1:\x05n1= n1 + 1elif classfier[i] == 2:\x05n2 = n2 + 1elif classfier[i] == 3:\x05n3 = n3 + 1elif classfier[i] == 4:\x05n4 = n4 + 1elif classfier[i] == 5:\x05n5 = n5 + 1elif classfier[i] == 6:\x05n6 = n6 + 1else:\x05n7 = n7 + 1vector = [100 * n0/l,100 * n1/l,100 * n2/l,100 * n3/l,100 * n4/l,100 * n5/l,100 * n6/l,100 * n7/l]print 'Col0:',round(100 * n0/l,4),'%'print 'Col1:',round(100 * n1/l,4),'%'print 'Col2:',round(100 * n2/l,4),'%'print 'Col3:',round(100 * n3/l,4),'%'print 'Col4:',round(100 * n4/l,4),'%'print 'Col5:',round(100 * n5/l,4),'%'print 'Col6:',round(100 * n6/l,4),'%'print 'Col7:',round(100 * n7/l,4),'%\n'return(vector)
作业帮用户
扫二维码下载作业帮
3亿+用户的选择
python 3.3 脚本,看看是否能给你点启示a = [1,2,5,1,2,3,5,6,6,5,4,6,4,2,0,8,9,7,4,1,1,2,2,2,2,2,2,2,2,3,3,3,2,5,2,5,8,5,5]count = len(a)myset = set(a)for item in myset:print(item,100*a.count(item)/count)
为您推荐:
其他类似问题
扫描下载二维码exercise3.数字和数学计算
每一种编程语言都包含处理数字和进行数学计算的方法。不必担心,程序员经常撒谎说他们是多么牛的数学天才,其实他们根本不是。如果他们真是数学天才,他们早就去从事数学相关的行业了,而不是写写广告程序和社交网络游戏。
这节练习里有很多的数学运算符号。我们来看一遍它们都叫什么名字。你要一边写一边念出它们的名字来,直到你念烦了为止。名字如下:
+ plus 加号
- minus 减号
/ slash 斜杠 除法
* asterisk 星号 乘法
% percent 百分号 模除
& less-than 小于号
& greater-than 大于号
&= less-than-equal 小于等于号
&= greater-than-equal 大于等于号
有没有注意到以上只是些符号,没有运算操作呢?写完下面的练习代码后,再回到上面的列表,写出每个符号的作用。例如+是用来做加法运算的。
print "I will now count my chickens:"
print "Hens", 25 + 30 / 6
print "Roosters", 100 - 25 * 3 % 4
print "Now I will count the eggs:"
print 3 + 2 + 1 - 5 + 4 % 2 - 1 / 4 + 6
print "Is it true that 3 + 2 & 5 - 7?"
print 3 + 2 & 5 - 7
print "What is 3 + 2?", 3 + 2
print "What is 5 - 7?", 5 - 7
print "Oh, that's why it's False."
print "How about some more."
print "Is it greater?", 5 & -2
print "Is it greater or equal?", 5 &= -2
print "Is it less or equal?", 5 &= -2
你看到的结果
$ python ex3.py
I will now count my chickens:
Roosters 97
Now I will count the eggs:
Is it true that 3 + 2 & 5 - 7?
What is 3 + 2? 5
What is 5 - 7? -2
Oh, that's why it's False.
How about some more.
Is it greater? True
Is it greater or equal? True
Is it less or equal? False
1.使用#在代码每一行的前一行为自己写一个注释,说明这一行的作用。 2.记得练习 0 的内容吧?用里边的方法把 Python 运行起来,然后使用刚才学到的运算符号,把 Python 当做计算器玩玩。 3.自己找个需要计算的东西,写一个 .py 文件把它计算出来。 4.有没有发现有些计算结果是”错”的呢?计算结果只有整数,没有小数部分。研究一下这是为什么,搜索一下“浮点数(floating point number)” 是什么东西。 5.使用浮点数重写一遍 ex3.py,让它的计算结果更准确(提示: 20.0 是一个浮点数)。
Q: 为什么%表示模除而不是“百分号”?
这个问题的答案正好就是问什么大部分程序员选择用这个运算符。平时我们把它看做一个“百分号”。在编程计算中,通常把它和/一样当做除法的运算符。%是一个不同的运算,只是用%符号来表示。
Q: %如何运算的?
另一种说法是, &X 除以 Y 余 J.& 比如, &100 除以 16 余数为 4.& % 计算的结果就是这个余数。
Q: 运算符的顺序是怎样的?
在美国我们用一个括弧来指定加减乘除的顺序。Python 中也同样遵循这个规律。
Q: /是如何运算的?
它只是舍去了小数点后面的部分,比较一下 7.0 / 4.0 和 7 / 4,你就会明白其中的不同了。Python 基础教程
Python 运算符
什么是运算符?
本章节主要说明Python的运算符。举个简单的例子 4 +5 = 9 。
例子中,4 和 5 被称为操作数,"+" 称为运算符。
Python语言支持以下类型的运算符:
接下来让我们一个个来学习Python的运算符。
Python算术运算符
以下假设变量: a=10,b=20:
运算符描述实例
+加 - 两个对象相加 a + b 输出结果 30
-减 - 得到负数或是一个数减去另一个数 a - b 输出结果 -10
*乘 - 两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 200
/除 - x除以y b / a 输出结果 2
%取模 - 返回除法的余数 b % a 输出结果 0
**幂 - 返回x的y次幂 a**b 为10的20次方, 输出结果
//取整除 - 返回商的整数部分(向下取整) 9//2 输出结果 4 , 9.0//2.0 输出结果 4.0
以下实例演示了Python所有算术运算符的操作:
实例(Python 2.0+)
print &1 - c 的值为:&, c
print &2 - c 的值为:&, c
print &3 - c 的值为:&, c
print &4 - c 的值为:&, c
print &5 - c 的值为:&, c
print &6 - c 的值为:&, c
print &7 - c 的值为:&, c
以上实例输出结果:
1 - c 的值为: 31
2 - c 的值为: 11
3 - c 的值为: 210
4 - c 的值为: 2
5 - c 的值为: 1
6 - c 的值为: 8
7 - c 的值为: 2
注意:Python2.x 里,整数除整数,只能得出整数。如果要得到小数部分,把其中一个数改成浮点数即可。
&&& 1/float(2)
Python比较运算符
以下假设变量a为10,变量b为20:
运算符描述实例
== 等于 - 比较对象是否相等 (a == b) 返回 False。
!= 不等于 - 比较两个对象是否不相等 (a != b) 返回 true.
&&不等于 - 比较两个对象是否不相等 (a && b) 返回 true。这个运算符类似 != 。
& 大于 - 返回x是否大于y (a & b) 返回 False。
& 小于 - 返回x是否小于y。所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量True和False等价。 (a & b) 返回 true。
&= 大于等于 - 返回x是否大于等于y。 (a &= b) 返回 False。
&= 小于等于 - 返回x是否小于等于y。 (a &= b) 返回 true。
以下实例演示了Python所有比较运算符的操作:
实例(Python 2.0+)
if ( a == b ):
print &1 - a 等于 b&
print &1 - a 不等于 b&
if ( a != b ):
print &2 - a 不等于 b&
print &2 - a 等于 b&
if ( a && b ):
print &3 - a 不等于 b&
print &3 - a 等于 b&
if ( a & b ):
print &4 - a 小于 b&
print &4 - a 大于等于 b&
if ( a & b ):
print &5 - a 大于 b&
print &5 - a 小于等于 b&
if ( a &= b ):
print &6 - a 小于等于 b&
print &6 - a 大于 b&
if ( b &= a ):
print &7 - b 大于等于 a&
print &7 - b 小于 a&
以上实例输出结果:
1 - a 不等于 b
2 - a 不等于 b
3 - a 不等于 b
4 - a 大于等于 b
5 - a 大于 b
6 - a 小于等于 b
7 - b 大于等于 a
Python赋值运算符
以下假设变量a为10,变量b为20:
运算符描述实例
=简单的赋值运算符 c = a + b 将 a + b 的运算结果赋值为 c
+=加法赋值运算符 c += a 等效于 c = c + a
-=减法赋值运算符 c -= a 等效于 c = c - a
*=乘法赋值运算符 c *= a 等效于 c = c * a
/=除法赋值运算符 c /= a 等效于 c = c / a
%=取模赋值运算符 c %= a 等效于 c = c % a
**=幂赋值运算符 c **= a 等效于 c = c ** a
//= 取整除赋值运算符 c //= a 等效于 c = c // a
以下实例演示了Python所有赋值运算符的操作:
实例(Python 2.0+)
print &1 - c 的值为:&, c
print &2 - c 的值为:&, c
print &3 - c 的值为:&, c
print &4 - c 的值为:&, c
print &5 - c 的值为:&, c
print &6 - c 的值为:&, c
print &7 - c 的值为:&, c
以上实例输出结果:
1 - c 的值为: 31
2 - c 的值为: 52
3 - c 的值为: 1092
4 - c 的值为: 52
5 - c 的值为: 2
6 - c 的值为: 2097152
7 - c 的值为: 99864
Python位运算符
按位运算符是把数字看作二进制来进行计算的。Python中的按位运算法则如下:
下表中变量 a 为 60,b 为 13,二进制格式如下:
-----------------
运算符描述实例
&按位与运算符:参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0 (a & b) 输出结果 12 ,二进制解释:
| 按位或运算符:只要对应的二个二进位有一个为1时,结果位就为1。 (a | b) 输出结果 61 ,二进制解释:
^按位异或运算符:当两对应的二进位相异时,结果为1
(a ^ b) 输出结果 49 ,二进制解释:
~ 按位取反运算符:对数据的每个二进制位取反,即把1变为0,把0变为1 。~x 类似于 -x-1 (~a ) 输出结果 -61 ,二进制解释: ,在一个有符号二进制数的补码形式。
&&左移动运算符:运算数的各二进位全部左移若干位,由 && 右边的数字指定了移动的位数,高位丢弃,低位补0。 a && 2 输出结果 240 ,二进制解释:
&&右移动运算符:把"&&"左边的运算数的各二进位全部右移若干位,&& 右边的数字指定了移动的位数
a && 2 输出结果 15 ,二进制解释:
以下实例演示了Python所有位运算符的操作:
实例(Python 2.0+)
c = a & b;
print &1 - c 的值为:&, c
c = a | b;
print &2 - c 的值为:&, c
c = a ^ b;
print &3 - c 的值为:&, c
print &4 - c 的值为:&, c
c = a && 2;
print &5 - c 的值为:&, c
c = a && 2;
print &6 - c 的值为:&, c
以上实例输出结果:
1 - c 的值为: 12
2 - c 的值为: 61
3 - c 的值为: 49
4 - c 的值为: -61
5 - c 的值为: 240
6 - c 的值为: 15
Python逻辑运算符
Python语言支持逻辑运算符,以下假设变量 a 为 10, b为 20:
运算符逻辑表达式描述实例
andx and y 布尔"与" - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。
(a and b) 返回 20。
orx or y布尔"或" - 如果 x 是非 0,它返回 x 的值,否则它返回 y 的计算值。 (a or b) 返回 10。
notnot x布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。 not(a and b) 返回 False
以上实例输出结果:
实例(Python 2.0+)
if ( a and b ):
print &1 - 变量 a 和 b 都为 true&
print &1 - 变量 a 和 b 有一个不为 true&
if ( a or b ):
print &2 - 变量 a 和 b 都为 true,或其中一个变量为 true&
print &2 - 变量 a 和 b 都不为 true&
if ( a and b ):
print &3 - 变量 a 和 b 都为 true&
print &3 - 变量 a 和 b 有一个不为 true&
if ( a or b ):
print &4 - 变量 a 和 b 都为 true,或其中一个变量为 true&
print &4 - 变量 a 和 b 都不为 true&
if not( a and b ):
print &5 - 变量 a 和 b 都为 false,或其中一个变量为 false&
print &5 - 变量 a 和 b 都为 true&
以上实例输出结果:
1 - 变量 a 和 b 都为 true
2 - 变量 a 和 b 都为 true,或其中一个变量为 true
3 - 变量 a 和 b 有一个不为 true
4 - 变量 a 和 b 都为 true,或其中一个变量为 true
5 - 变量 a 和 b 都为 false,或其中一个变量为 false
Python成员运算符
除了以上的一些运算符之外,Python还支持成员运算符,测试实例中包含了一系列的成员,包括字符串,列表或元组。
运算符描述实例
如果在指定的序列中找到值返回 True,否则返回 False。
x 在 y 序列中 , 如果 x 在 y 序列中返回 True。
not in如果在指定的序列中没有找到值返回 True,否则返回 False。
x 不在 y 序列中 , 如果 x 不在 y 序列中返回 True。
以下实例演示了Python所有成员运算符的操作:
实例(Python 2.0+)
list = [1, 2, 3, 4, 5 ];
if ( a in list ):
print &1 - 变量 a 在给定的列表中 list 中&
print &1 - 变量 a 不在给定的列表中 list 中&
if ( b not in list ):
print &2 - 变量 b 不在给定的列表中 list 中&
print &2 - 变量 b 在给定的列表中 list 中&
if ( a in list ):
print &3 - 变量 a 在给定的列表中 list 中&
print &3 - 变量 a 不在给定的列表中 list 中&
以上实例输出结果:
1 - 变量 a 不在给定的列表中 list 中
2 - 变量 b 不在给定的列表中 list 中
3 - 变量 a 在给定的列表中 list 中
Python身份运算符
身份运算符用于比较两个对象的存储单元
运算符描述实例
is 是判断两个标识符是不是引用自一个对象 x is y, 类似 id(x) == id(y) , 如果引用的是同一个对象则返回 True,否则返回 False
is notis not 是判断两个标识符是不是引用自不同对象 x is not y , 类似 id(a) != id(b)。如果引用的不是同一个对象则返回结果 True,否则返回 False。
函数用于获取对象内存地址。
以下实例演示了Python所有身份运算符的操作:
实例(Python 2.0+)
if ( a is b ):
print &1 - a 和 b 有相同的标识&
print &1 - a 和 b 没有相同的标识&
if ( a is not b ):
print &2 - a 和 b 没有相同的标识&
print &2 - a 和 b 有相同的标识&
if ( a is b ):
print &3 - a 和 b 有相同的标识&
print &3 - a 和 b 没有相同的标识&
if ( a is not b ):
print &4 - a 和 b 没有相同的标识&
print &4 - a 和 b 有相同的标识&
以上实例输出结果:
1 - a 和 b 有相同的标识
2 - a 和 b 有相同的标识
3 - a 和 b 没有相同的标识
4 - a 和 b 没有相同的标识
is 与 == 区别:
is 用于判断两个变量引用对象是否为同一个, == 用于判断引用变量的值是否相等。
&&& a = [1, 2, 3]
&&& b is a
&&& b == a
&&& b = a[:]
&&& b is a
&&& b == a
Python运算符优先级
以下表格列出了从最高到最低优先级的所有运算符:
运算符描述
指数 (最高优先级)
按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@)
乘,除,取模和取整除
右移,左移运算符
比较运算符
等于运算符
= %= /= //= -= += *= **=
赋值运算符
身份运算符
成员运算符
not and or
逻辑运算符
以下实例演示了Python所有运算符优先级的操作:
实例(Python 2.0+)
e = (a + b) * c / d
print &(a + b) * c / d 运算结果为:&, e
e = ((a + b) * c) / d
print &((a + b) * c) / d 运算结果为:&, e
e = (a + b) * (c / d);
print &(a + b) * (c / d) 运算结果为:&, e
e = a + (b * c) / d;
print &a + (b * c) / d 运算结果为:&, e
以上实例输出结果:
(a + b) * c / d 运算结果为: 90
((a + b) * c) / d 运算结果为: 90
(a + b) * (c / d) 运算结果为: 90
a + (b * c) / d 运算结果为: 50
后者是拷贝
Python 有个叫做 id 的函数能够得到对象的地址,你打印出来看看就清楚了。直接 = 是引用赋值,引用原来的对象;而 [:] 是重新推导,会生成新的对象。
&&& a=[1,2,3,4,5]
&&& c=a[:]
从以上结果上看 id(a) 与 id(b) 的内存地址一样的,而 id(a) 与 id(c) 内存地址不一样。
&&&广工陈不亮&&113***1个月前 (07-21)
感谢您的支持,我会继续努力的!
扫码打赏,你说多少就多少
记住登录状态
重复输入密码}

我要回帖

更多关于 四年级数学简便运算题 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信