首页 > 其他分享 >day1运算符

day1运算符

时间:2023-03-04 23:59:01浏览次数:32  
标签:False 16 day1 运算符 num print True dot

# """
# 计算机程序可以处理各种数值,还可以处理文本、图形、音频、视频、网页等各种各样的数据,不同的数据,需要定义不同的数据类型。
# 在Python中,能够直接处理的数据类型有以下几种:整数  1,2,3,10,100,1000,-1000 等等
# 计算机由于使用二进制,所以,在计算机中也常用二进制或者十六进制表示整数。
#     二进制数只使用数字0、1表示,在Python中,二进制整数使用前缀0b表示,比如:0b0110,0b1100。
#     十六进制数除了0~9十个数字以外,还使用a、b、c、d、e、f,在Python中,十六进制使用前缀0x,比如:0x12ef,0xde2431af。
# """
# print(0)  # 0
# print(type(0))  # <class 'int'>
#
# x = 0b0110  # 0*1 + 1*2 + 1*2*2 + 0*2*2*2
# print(x)  # 6
# print(0 * 1 + 1 * 2 + 1 * 2 * 2 + 0 * 2 * 2 * 2)  # 6
#
# y = 0x12ef  # 15*1 + 14*16 + 2*16*16 + 1*16*16*16
# print(y)  # 4847
# print(15 * 1 + 14 * 16 + 2 * 16 * 16 + 1 * 16 * 16 * 16)  # 4847
# print(type(0b1101))  # <class 'int'>

# """
# 一个浮点数的小数点位置是可变的(浮动的),比如,1.23x10^9和12.3x10^8是相等的,因此称为浮点数。
# 在Python中,把10用e替代,比如:1.23x10^9就是1.23e9,或者12.3e8,0.000012可以写成1.2e-5
# """
# print(1.23e9)  # 1230000000.0
#
# print(0.27 + 1.66)  # 1.93

# z = 0.666
# print("%f" % z)  # 0.666000
# print("%.2f" % z)  # 0.67
# print("%.2f%%" % z)  # 0.67%
# print(type(z))  # <class 'float'>

# """
# 在Python中,字符串是以''或""括起来的任意文本,比如'abc',"xyz"等等。请注意,''或""本身只是一种表示方式,不是字符串的一部分,
# 因此,字符串'abc'只有a,b,c这3个字符
# """
# print('123')  # 123
# print("123")  # 123
# print(type('123'))  # <class 'str'>
#
# print("'111'")  # '111'
# print('"111"')  # "111"
# print('111' == "111")  # True
# print("'111'" == '"111"')  # False

# """
# 布尔值:True、False(请注意大小写,不需要使用字符串符号括起来),也可以通过布尔运算计算出来
# 布尔值可以用and、or和not运算(注意and,or,not都是Python语言本身的关键字)
#     1. and运算是与运算,只有所有都为 True,and运算结果才是 True。
#     2. or运算是或运算,只要其中有一个为 True,or 运算结果就是 True。
#     3. not运算是非运算,它是一个单目运算符,把 True 变成 False,False 变成 True。
#     4. Python把0、空字符串看成False,其他数值和非空字符串都看成True。
#     5. not计算的优先级是高于and和or的
# 短路计算:
#   在计算a and b时,如果 a 是 False,则根据与运算法则,整个结果必定为 False,因此返回 a;如果 a 是 True,则整个计算结果必定取决与 b,因此返回 b。
#   在计算a or b时,如果 a 是 True,则根据或运算法则,整个计算结果必定为 True,因此返回 a;如果 a 是 False,则整个计算结果必定取决于 b,因此返回 b。
# """
# print(1 and 4)  # 4,因为要所有的都比较完,才能确定是为TRUE还是FALSE
# print(1 and 4 or 0)  # 4
# print(4 and 1)  # 1
# print(1 or 4)  # 1,因为只有一个成立时,就为TRUE了,成立就不再比较
# print(1 or 4 and 3)  # 1,短路原则,若1 or 时永远成立,就不再比较后面的值
# print(1 or 0 and 3)  # 1
# print(1 and 3 or 0 and 2)  # 3
# print(0 or 1 and 0)  # 0,0 or时不成立,需要往后面再比较
# print(0 or 1 and 2)  # 2
#
# print(not True or 1)  # 1
# print(not True and 1)  # False

# """
# 空值是Python里一个特殊的值,用None表示。
# None和0是不一样的,因为0是有意义的,比如我有0个苹果表示我没有苹果,0表达的是数值0的意思,而不能表示为我有None个苹果,None是一个特殊的空值。
# False表示值为假
# """
print(None == 0)
print(False == 0)
print(not True == 0)
print(None == False)

"""
______

False 【】
True
True
False
"""

# """
# 整数、浮点数可以直接进行 加减乘除 四则运算
# 注意到:整数和浮点数运算后,不管小数位有没有值,结果都变成了浮点数
# """
# num1 = 10
# num2 = 0.5
# print(num1 + num2)  # 10.5
# print(num1 - num2)  # 9.5
# print(num1 * num2)  # 5.0
# print(num1 / num2)  # 20.0

# """
# 取模:取余数,可以用来判断一个数是否为偶数
# 地板除//:得到的结果会忽略纯小数的部分,得到整数的部分
# """
# print(num1 % num2)  # 0.0
# print(5 % 3)  # 2,取余数
# print(5 // 3)  # 1,取整数"""
四舍五入:round(num, 2)
round(需要保留小数点位数的数值, 保留几位)
下面的例子,明明是四舍五入,但是四舍五入的结果值不一样,一个进位了,一个没有进位
"""
print(round(3.45, 1))  # 3.5
print(round(3.1245, 3))  # 3.124

# ps:一个长方形的长为3.14cm,宽为1.57cm,请计算这个长方形的面积,保留小数点后两位
num1 = 3.14
num2 = 1.57
num3 = num1 * num2
print(num3)
print(round(num3, 3))


# 因为发现round的四舍五入不对,重写round方法
def fix_round(num_1, num_2):
    """

    :param num_1: 要被计算的数字
    :param num_2: 要保留的小数的位数
    :return: int 计算后的 num_1
    """
    _int, _dot = str(num_1).split(".")
    _index = 0
    has_ten = False
    dot_new = ""
    for i in _dot:
        if _index < num_2:
            dot_new += i
            _index += 1
            continue
        elif _index == num_2:
            if int(i) >= 5:
                pre_num = int(dot_new[-1]) + 1
                if pre_num == 10:
                    pre_num = 0
                    has_ten = True
                dot_new = dot_new[:len(dot_new) - 1] + str(pre_num)
            _index += 1
        else:
            break

    if has_ten:
        old_len = len(dot_new)
        dot_new = str(int(dot_new) + 10)
        if old_len != len(dot_new):
            _int = str(int(_int) + 1)
    return _int + "." + dot_new[1:]


print(fix_round(3.999999789, 5))


# 循环的思考
def test(l, p):
    for i in l:
        if i == 1:
            print("i  = 1")
            if p == 1:
                print("吃饱了,不吃了")
                break
            if p == 3:
                print("p = 3  不对")
                break
            if p == 2:
                print("p = 3  不对")
                continue
            continue
        if i == 5 and p == 31:
            print("吃饱了,不吃了")
            continue


l = [1, 3, 45, 7, 0]
test(l, 1)

 

标签:False,16,day1,运算符,num,print,True,dot
From: https://www.cnblogs.com/purewhite/p/17179530.html

相关文章

  • 代码随想录day18|
    找树左下角的值给定一个二叉树的 根节点 root,请找出该二叉树的 最底层 最左边 节点的值。分析用层序遍历最底层的最左节点  递归记录第一次到达下一层的节......
  • 手刷算法day1(2)(go语言实践)
    344. 反转字符串 编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使......
  • 手刷算法day1(1)(go语言实践)
    29.DivideTwoIntegers 给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串的第一个匹配项的下标(下标从0开始)。如果 needle......
  • 实验1 C语言开发环境使用和类型,运算符,表达式
    //打印一个字符小人#include<stdio.h>intmain(){ printf("O\n"); printf("<H>\n"); printf("II\n");printf("O\n");printf("<H>\n");printf("II\n"......
  • 数据类型转换与运算符
    一、数据类型转换1.数据类型转换1.1自动数据类型转换整数类型自动数据类型转换:当长度小的数据类型,赋值给长度长的数据类型。那么只需要在高位补零。数据的值未发生变......
  • java的基本语法—运算符
    运算符算术运算符:+,-,*,/,%,++,--赋值运算符:=关系运算符:>,<,>=,==,!=,instanceof逻辑运算符:&&与,||或,!非位运算符:&,|,~,>>,<<,>>>(了解!!!)条件运算符:?:扩展赋值运算符:+=,-=,*=,/=......
  • day12事件下
    day12事件下事件流的传播流程三个阶段捕获阶段从最外层找到事件执行元素window--document--body--div--button目标阶段找到button执行button对应的事件冒泡阶......
  • 代码随想录day17|平衡二叉树 二叉树的所有路径 左叶子之和
    左叶子之和给定二叉树的根节点 root ,返回所有左叶子之和。分析后序遍历因为需要先处理完子节点返回结果给父节点classSolution{publicintsumOfLeftL......
  • 项目day1 -- vscode远程连接云服务器
    刚学完go的语法,本来想着找个小项目试试手,发现大佬们都是vscodessh到云服务器上做开发的。正好看到阿里云的学生认证后可以白嫖,就先嫖了个试试手跟着各大教程简单配置了......
  • python中列表使用 += 运算符
    在python中,列表使用 += 运算符等价于列表调用了extend方法,即列表变量调用 += 本质上是在执行列表的extend方法,不会修改变量的引用若列表不使用 += 运算符时:......