python学习1

主要参考datawhale开源资料

运算符

算术运算符

+,-,*,/,//,%,**
其中//为整除(地板除),3//4=0
%为取余,3%4=3
∗ ∗ ** 为幂,2**3=8;[0]**3=[0,0,0]

比较运算符

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

逻辑运算符

and与,or或,not非

位运算符

在这里插入图片描述在这里插入图片描述

三元运算符

在这里插入图片描述

其他运算符

在这里插入图片描述重点,is比较的是内存地址,==比较的是变量值,注意不可变类型变量和可变类型变量的影响
在这里插入图片描述

运算符优先级

一元运算符大于二元运算符,先算数再移位最后位运算,逻辑运算在最后

练习

怎样对python中的代码进行注释?
#单行注释,‘’‘ ’‘’多行注释
python有哪些运算符,这些运算符的优先级是怎样的?
算数运算符、移位运算符、位运算符、逻辑运算符、in、not in、is 、is not
python 中 is, is not 与 ==, != 的区别是什么?
前者比较的是变量的内存地址,后者比较变量的值
python 中包含哪些数据类型?
这些数据类型之间如何转换?int、float、str、bool

其中bool(x)在使用时,x是基本变量类型还是容器变量类型需要注意
在这里插入图片描述### 练习二使用位运算解leetcode136题
异或解法:异或运算满足交换律,a异或b异或a=a异或a异或b=b,因此ans相当于nums[0]异或nums[1]异或nums[2]异或nums[3]异或nums[4]… 然后再根据交换律把相等的合并到一块儿进行异或(结果为0),然后再与只出现过一次的元素进行异或,这样最后的结果就是,只出现过一次的元素(0^任意值=任意值)
在这里插入图片描述

class Solution:
    def singleNumber(self, nums: List[int]) -> int:
        a=0
        for num in nums:
            a=a^num
        return a

解法2
这个也很有趣,思想更简单

class Solution:
    def singleNumber(self, nums: List[int]) -> int:
        a=sum(set(nums))*2-sum(nums)
        
        return a
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值