马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 Vermilion 于 2017-7-10 20:13 编辑
《零基础入门学习python》第006讲个人学习笔记--常用操作符
0.
算术操作符
大部分和我们的理解所相同
+ - * / % ** //
a=a+3 可以写成 a+=3
1.
>>>a=b=c=d=10 相当于a=10,b=10,c=10,d=10
2.
在python3中“/“代表了精确的除数,而”//“才代表以前的低阶除法
这里要注意的是3.0//2.0 并不是以前的浮点数除法而是等于1.0
eg:
3/2=1.5
3.0//2.0=1.0
3.
幂运算
**
>>>3**2即为3^2
4.
算数操作符的优先级问题
-作为单目运算符之时是作为负号而非减号出现的
比较大于逻辑
(关系运算符)
>,< and
注意:幂运算符比其左侧的单目运算符优先级高,比其右侧的单目运算符优先级低
如>>>-3**2
9
>>>3**-2
0.11111
5.比较操作符
通过比较判断布尔类型来返回true or false
6.
逻辑操作符
and:两个都为真才是真
or:一个为真即为真
not:取相反的布尔类型的值作为返回值
>>>3<4<5 解释为3<4 and 4<5
true
优先级
**
正负
算数(先乘除后加减)
比较
逻辑: not
{ and
or
课后习题
0.
not 1or 0 and 1 or 3 and 4 or 5 and 6 or 7 and 8 and 9
答案是4
注意
not>and>or
1.求余学会以前有什么折中的方案么
有求余时: y%a==0
没有的时候:int(y/a)==y/a是否为真
动动手
0.自己做的i=0
while i<=100:
if i%2!=0:
print (i)
i=i+1
小甲鱼做的i = 0
while i <= 100:
if i % 2 != 0:
print(i, end=' ')
i += 1
else:
i += 1
这里的end=不是很懂,我的理解是不分行,大神会的可以解答下,谢谢了
1.输入一个让计算机崩溃的程序
print(2**2**32)
为什么print((2**2)**32)不崩溃呢?
我的猜测是前一个运算是以2为底,意味着每次相乘都以2来相乘,而第二个则是第一步变成4,后面用4计算一个相同的数,运算量小很多
这个同样,大神会的可以解答下,谢谢了
2.已知x,x%2==1,x%3==2, x%5==4, x%6==5, x%7==0,运用编程解决问题
这一题我没写出来,下面是鱼神的答案x = 7
i = 1
flag = 0
while i <= 100:
if (x%2 == 1) and (x%3 == 2) and (x%5 == 4) and (x%6==5):
flag = 1
else:
x = 7 * (i+1) # 根据题意,x一定是7的整数倍,所以每次乘以7
i += 1
if flag == 1:
print('阶梯数是:', x)
else:
print('在程序限定的范围内找不到答案!')
|