第一次任务の打卡


一、 变量、运算符与数据类型

部分练习题及解答

  1. 怎样对python中的代码进行注释?
    注释就是对代码的解释和说明。目的是为了让别人和自己很容易看懂,一看就知道这段代码是做什么用的。正确的程序注释一般包括序言性注释和功能性注释。python中注释可分为行注释和块注释,即单行注释和多行注释。
    ①单行注释用 # 表示,并在井号后面输入注释的内容即可。
    ②多行注释用一对 三个单引号'''或一对 三个双引号"""表示,并在一对引号内(可多行)输入要注释的内容即可。
print("Hello world") # 这是一个单行注释

'''
这是多行注释,用三个单引号
在这里输入注释内容即可
'''

"""
这是多行注释,用三个双引号
在这里输入注释内容即可
"""

2.python有哪些运算符,这些运算符的优先级是怎样的?

①python中的主要运算符有:算术运算符、比较运算符、逻辑运算符、位运算符、其他运算符等,
②一般而言,常用的优先级为:算术运算 > 位运算 > 逻辑运算

关于运算符的详细介绍可参考以下文章:http://c.biancheng.net/view/2190.html

3.python 中 is, is not==, != 的区别是什么?
is的名称为
is not的名称为 不是
== 的名称为 等于
!= 的名称为 不等于
① is, is not 对比的是两个变量的内存地址,而 ==, != 对比的是两个变量的
②当对比的两个变量是地址不可变的类型(str等),那么is,is not 和 ==,!= 是完全等价的。当对比两个变量是地址可变的类型(list,dict等),则两者是有区别的。

以下给出可变类型与不可变类型的概念:
可变类型:变量名存储的是一个地址,该地址指向一个具体的对象,并且不管对变量的值即对象做怎么样的操作,都不会改变变量名存储的地址。如python中的列表(list),字典(dict),集合(set)。

不可变类型:不变数据类型的对象一旦发生改变,就会在内存中开辟一个新的空间用于存储新的对象,原来的变量名就会指向一个新的地址。如python中的元组,bool,数字(int),字符串(str)。

4.python 中包含哪些数据类型?这些数据类型之间如何转换?

①常用的数据类型有:整型浮点型布尔型

②类型转换:

  • 转换为整型 int(x, base=10)
  • 转换为字符串 str(object='')
  • 转换为浮点型 float(x)
print(int('520'))  # 520
print(int(520.52))  # 520
print(float('520.52'))  # 520.52
print(float(520))  # 520.0
print(str(10 + 10))  # 20
print(str(10.1 + 5.2))  # 15.3

二、位运算

练习题:只出现一次的数字

给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。尝试使用位运算解决此题。题目说明:

"""
Input file
example1: [2,2,1]
example2: [4,1,2,1,2]

Output file
result1: 1
result2: 4
"""



class Solution:
    def singleNumber(self, nums):
        
     # your code here

解题代码如下(向左滑动查看更多代码):

nums = []   # 定义一个空数组,用于接收数组


class Solution:   # 构建一个类对象
    def singleNumber(self, nums):  # 定义解决问题的方法
        i = 0
        for i in range(len(nums)):
            j = 0
            target = nums[i]  # 先取出nums的第一元素,作为比较对象
            for num in nums:   # 遍历数组以找到不重复的元素
                if target ^ num: # 使用位运算中的异或运算符
                    j += 1
                if j >=len(nums) - 1:
                    return target  # 返回这个不重复的元素


a = Solution()  # 实例化一个类对象
print(a.singleNumber([2, 2, 1]))   #调用方法,然后打印结果为1 
print(a.singleNumber([4, 1, 2, 1, 2]))   # 4

Tips:该方法只能找出一个不重复的元素,当要查找数组中有两个及以上的不重复元素时,有待改进…

三、条件语句

if语句中常用的三种类型

if 语句

if expression:
    expr_true_suite

if 语句的 expr_true_suite 代码块只有当条件表达式 expression 结果为真时才执行,否则将继续执行紧跟在该代码块后面的语句。

if - else 语句

if expression:
    expr_true_suite
else:
    expr_false_suite

Python 提供与 if 搭配使用的 else,如果 if 语句的条件表达式结果布尔值为假,那么程序将执行 else 语句后的代码。

if - elif - else 语句

if expression1:
    expr1_true_suite
elif expression2:
    expr2_true_suite
    .
    .
elif expressionN:
    exprN_true_suite
else:
    expr_false_suite

elif 语句即为 else if,用来检查多个表达式是否为真,并在为真时执行特定代码块中的代码。而且elif 可以多个嵌套使用。

关于if语句的一些小心得:
1) else是一条只要不满足if条件或elif条件就会执行的代码,如果知道最终要测试的条件,建议使用elif代码块代替else
2) 如果只想执行一个代码块,就可使用 if - elif - else 结构,这样只要检查到一个条件满足就跳出; 如果运行多个代码块,就使用多个独立的 if 语句,代码运行时会逐个检查测试条件,且各独立的 if 语句互不干扰。

猜你喜欢

转载自blog.csdn.net/weixin_51503843/article/details/109084790