Task01
变量、运算符与数据类型
练习题
1.怎样对python中的代码进行注释?
用#注释,作用于整行
例:
print("hello world")
# 这是个单行注释
用单引号’’'或者双引号"""注释,用于多行注释
例:
print("hello world")
'''
这是多行注释
这是多行注释
'''
"""
这是多行注释
这是多行注释
"""
2.python有哪些运算符,这些运算符的优先级是怎样的?
算数运算符:
名称 | 操作符 |
---|---|
加 | + |
减 | - |
乘 | * |
除 | / |
整除(向下取整) | // |
取余(模) | % |
幂 | ** |
比较运算符:
名称 | 操作符 |
---|---|
大于 | > |
大于等于 | >= |
小于 | < |
小于等于 | <= |
等于 | = |
不等于 | != |
逻辑运算符:
名称 | 操作符 |
---|---|
与 | and |
或 | or |
非 | not |
位运算符:
名称 | 操作符 |
---|---|
按位取反 | ~ |
按位与 | & |
按位或 | | |
按位异或 | ^ |
左移 | << |
右移 | >> |
三元运算符:
x,y=3,4
big=x if y > x else y
print(big)
成员运算符:
名称 | 操作符 | 描述 |
---|---|---|
存在 | in | 如果在指定的序列中找到值返回True,否则返回False |
不存在 | not in | 如果在指定的序列中没有找到值返回True,否则返回False |
身份运算符:
名称 | 操作符 | 描述 | 实例 |
---|---|---|---|
是 | is | 判断两个标识符是不是引用自一个对象 | x is y,类似id(x)==id(y),如果引用的是同一个对象则返回True |
不是 | is not | 判断两个标识符是不是引用自不同的的对象 | x is not y,类似id(x)!=id(y),如果引用的不是同一个对象则返回True |
id()函数用于获取对象内存地址
运算符的优先级:
操作符 | 名称 |
---|---|
** | 指数 |
~ | 按位取反 |
+、- | 正号、负号 |
*、/、//、% | 乘、除、整除、取余 |
+、- | 加、减 |
<<、>> | 左移、右移运算符 |
& | 按位与 |
^、| | 按位异或、按位或 |
<=、<、>、=>、==、!= | 比较运算符 |
is、is not | 身份运算符 |
in、not in | 成员运算符 |
not | 逻辑非 |
and | 逻辑与 |
or | 逻辑或 |
3.python 中 is, is not 与 ==, != 的区别是什么?
is和is not用于判断两个变量引用对象是否为同一个(同一块内存空间)
==和!=用于判断引用变量的值是否相等
4.python 中包含哪些数据类型?这些数据类型之间如何转换?
类型 | 名称 |
---|---|
int | 整型 |
float | 浮点型 |
bool | 布尔型 |
转换:
转换为整型:int(x,base=10)
转换为字符串:str(object=’ ')
转换为浮点型:float(x)
思考题
1.Python是怎么诞生的?Python之父是谁?
Python的创始人为荷兰人吉多・范罗苏姆 (Guido van Rossum)。1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,作为ABC 语言的一种继承。之所以选中Python(大蟒蛇的意思)作为该编程语言的名字,是取自英国20世纪70年代首播的电视喜剧《蒙提.派森的飞行马戏团》(Monty Python’s Flying Circus)。
ABC是由Guido参加设计的一种教学语言。就Guido本人看来,ABC这种语言非常优美和强大,是专门为非专业程序员设计的。但是ABC语言并没有成功,究其原因,Guido认为是其非开放造成的。Guido决心在Python中避免这一错误。同时,他还想实现在ABC中闪现过但未曾实现的东西。
就这样,Python在Guido手中诞生了。
2.Python和C++(或者C)的区别在哪?即为什么要学习Python,C++不香吗?
python为脚本语言,解释执行,不需要经过编译,能很好的跨平台,同时开发效率高
位运算
练习题
leetcode 习题 136. 只出现一次的数字
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。
尝试使用位运算解决此题。
题目说明:
"""
Input file
example1: [2,2,1]
example2: [4,1,2,1,2]
Output file
result1: 1
result2: 4
"""
class Solution:
def singleNumber(self, nums: List[int]) -> int:
a = 0
for num in nums:
a = a ^ num
return a