首页 > 编程知识 正文

Python小知识,python初级

时间:2023-05-06 01:47:26 阅读:198610 作者:287

Python初学小知识(一) 0、其他一、变量二、字符串三、一些简单代码四、数字类型五、布尔类型、短路逻辑、优先运算
C语言和Python经常弄混,尤其总是忍不住给Python后面加分号……干脆给自己做个笔记省的忘了。。。(小甲鱼那边的)

0、其他 dir(builtins)可以看到python所有内置函数在交互文本中,用Alt+P可以显示上一行代码GitHub上有各种资料,可以用awesome+关键词搜索 一、变量 变量名通常由字母、数字、下划线构成,数字不能开头;赋值时别忘了引号(赋数字不用);中文名也能做变量名(不推荐);python在互换x,y时,可以不用z: x = 3y = 5x,y = y,xprint(x,y) #最终结果:5,3 二、字符串 python用字符串来表示文本;单引号、双引号都可,但要确保两边的引号成对;但是,当要打印的句子同时需要显示单、双引号,需用转义字符来实现: print('"Let's happy"') '''两边的单引号也可以改成双引号,此时已不受影响;两边的反斜杠也可以删掉'"Let's happy"'(不过删掉后,显而易见,两边就必须是单引号了)'''#输出为"Let's happy" 转义字符:
如果需要输出,也一样用转义;但是当太多时,可以在引号前加上r,表示原始输出字符串: print(r'D:mypageone') #输出为D:mypageone

但是 r 表示法不能表示多行字符串,也不能表示包含 ’ 和 " 的字符串。如果要表示多行字符串,可以用三个单引号表示:

'''Line 1Line 2Line 3'''#上面这个字符串的表示方法和下面的是完全一样的:'Line 1nLine 2nLine 3'#还可以在多行字符串前面添加r,把这个多行字符串也变成一个raw字符串:r'''Python is created by "开心的大炮".It is free and easy to learn.Let's start learn Python in imooc!''' 在输出末端加上,表示这件事还没完,可以换行: print("abn fsdngsdn") #最后一行结束了,可以换行#输出为:ab fsdgsd 用三引号可以更简便地实现上面的效果: word = '''abn fsdngsdn'''print(word)#输出为:ab fsdgsd

但是三引号有注释的作用,不要搞混

字符串的相加叫做拼接,同样可以相乘复制 三、一些简单代码 input返回的是字符串,如果要和数字毕竟,需要int();在判断语句中,is:判断两个对象的id是否相等;is not:判断两个对象的id是否不相等;Ctrl+C:打断运行;循环:

break:跳出当前循环random产生伪随机数(真正的随机数只有等到量子计算机诞生的那一天才能实现,只有利用量子纠缠才能够产生真正的随机数) import random random.randint(a,b) #随机获取一个属于[a,b]的整数x = random.getstate() #获取随机数生成之后随机数的内部状态random.setstate(x) #重新设置随机数生成器的内部状态 四、数字类型 两个整数相除是浮点数,用round()保留小数位数: >>> num = 10 / 3>>> num3.3333333333333335>>> round(num, 2) # 使用round保留两位小数3.33 python表示浮点数会有一定程度的误差,所以可以用decimal(十进制)模块: import decimala = decimal.Decimal('0.1')b = decimal.Decimal('0.2')print(a+b) #结果为精确的0.3 E记法(科学计数法),用来表示一些比较极端的数,比如说用5e-05表示0.00005;复数都是用浮点数表示的,如: x = 1 + 2jx.real #获取实部:1.0x.imag #获取虚部:2.0 数值运算: x // y #地板除向下取整:-3//2=-2x % y #x除以y的余数-x #x的相反数+x #x本身abs(x) #x的绝对值,复数返回模int(x) #将x转换成整数(字符串、浮点数),对浮点数取整是去尾float(x) #将x转换成浮点数(字符串、整数) #int()、float()内如果是字符串,则字符串不能带有空格complex(re,im) #返回一个复数,re是实部,im是虚部c .conjugate() #返回c的共辄复数divmod(x,y) #返回(x // y, x % y), x == (x // y) * y + (x % y) #divmod(-3,2) = (-2,1)pow(x, y) #计算x的y次方x ** y #计算x的y次方c #上面两个的差别是,pow()可以加入第三个参数:pow(a, b, c)表示a ** b % c 用==type()==得到数字类型 五、布尔类型、短路逻辑、优先运算 使用bool()内置函数可以直接给出Ture或False的结果: bool("False") #结果是True,对于字符串来说,只有空字符串结果是Falsebool(1) #数字一般是True,0、0.0、0j表示零,是False


其中Fraction(0,1)表示 0 1 frac{0}{1} 10​

布尔类型用来判断条件的结果注意: >>> 2 == TrueFalse>>> 1 == TrueTrue>>> bool(2)True>>> True - False1 #当True和False用在计算中,就是1,0 and、or、not与或非,对于and和or,计算结果不一定是True、False,取决于它的操作数(python中任何对象都可以支持真值测试): >>> 3 < 4 and 4 > 5False #相当于True and False,结果是False>>> 0 and 10 #第一个就是False,不用计算后面的了>>> 0 or 11>>> 'boy' and 'girl''girl'>>> 'girl' and 'boy''boy'>>> "A" and 22>>> 2 and 'A''A' #and运算要一直计算到最后,所以取最后值>>> "A" or 2'A'>>> 2 or "A"2 #or运算如果第一个值为True,则放弃计算后值,节约计算量>>> 3 and 44 #两边都是True,道理同上,直接用最后一个>>> 4 or 34

从上面的例子也可以看出,and和or都遵从短路逻辑:从左往右,只有当第一个操作数的值无法确定逻辑运算的结果时,才对第二个操作数进行求值;
从python的角度来看,根本没有必要把最终的测试结果判断完再汇报,更高效率的方法是直接把影响结果的关键值扔出来。

对于not,计算结果一定是True、False >>> not TrueFalse>>> not FalseTrue>>> not 2False>>> not 0True 运算符优先级(从上往下越高,最下面的优先级最高):

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。