首页 > 代码库 > python修行之路(三 模块初识及数据运算类型)

python修行之路(三 模块初识及数据运算类型)

在python修行路上,果不其然的遇到了第一个困处,开始看不懂代码,开始出现理解苦难的现象,这是小白修行路上的正常现象。其实自己是很慌的,感觉很无助,能做的就是把自己学的慢慢记录下来,理一个自己的逻辑,尽量写清楚,写的通俗易懂,为与我类似的修行者做参考。

 

一、模块初识

Python的强大之处在于他有非常丰富和强大的标准库和第三方库,使用时安装调用就好,现在先象征性的学习2个简单的。

sys模块——sys pass功能#!/usr/bin/env python
# -*- coding: utf-8 -*-

import sys
print(sys.path)

sys模块——sys arvg功能
#!/usr/bin/env python
# -*- coding: utf-8 -*-

import sys
print(sys.argv)
注释:打印的是当前脚本的相对路径,但是在pycharm内打印的是绝对路径,这是pycharm在写的的时候就是绝对路径,在cmd环境里就是相对路径了。

OS模块——os.system(调用系统命令)
#!/usr/bin/env python
# -*- coding: utf-8 -*-

impot os

cmd_res=os.system("dir")  #只执行命令,不保存结果

cmd_res = os.poopen("dir").read()  #结果存在了内存的一个临时地方,需要read读取。

print("-->"cmd_res)

 

os.mkdir("new_dir")#创建目录

python中有现成供使用的模块,也可以自己写模块,比如写一个最基本简单的

#打印输入用户名密码

建立一个名叫“login.py的模块

print(user,pwd)

在其他项目或程序里调用login模块:

import login

这样就OK了。

注释:这里有一个前提就是login模块实在当前目录里,这个调用的规则一致,在import调用模块时,是优先在当前目录找,然后再全局里找。

 

二、数据类型

 

python中数有四种类型:整数、长整数、浮点数和复数。

1、数字

  • 整型, 如 1    #在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647
                     在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807
  • 长整型 是比较大的整数     #在python3中,已经没有长整型,统称整形
  • 浮点型 如 1.23、3E-2     #经常以小数点的形式,但是以小数点的形式表现
  • 复数 如 1 + 2j、 1.1 + 2.2j
2、布尔值
  真或假
  1 或 0
 

 三、数据运算

1、算数运算

技术分享

 

2、比较运算

 

技术分享

 

3、赋值运算

 

技术分享

 

4、逻辑运算

 

技术分享

 

5、成员运算

 

技术分享

 

 6、身份运算

 

技术分享

 

 

7、位运算

 

技术分享

 

以下实例演示了Python所有位运算符的操作:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

a = 60            # 60 = 0011 1100 
b = 13            # 13 = 0000 1101 
c = 0

c = a & b;        # 12 = 0000 1100
print "1 - c 的值为:", c

c = a | b;        # 61 = 0011 1101 
print "2 - c 的值为:", c

c = a ^ b;        # 49 = 0011 0001
print "3 - c 的值为:", c

c = ~a;           # -61 = 1100 0011
print "4 - c 的值为:", c

c = a << 2;       # 240 = 1111 0000
print "5 - c 的值为:", c

c = a >> 2;       # 15 = 0000 1111
print "6 - c 的值为:", c

以上实例输出结果:

1 - a 不等于 b
2 - a 不等于 b
3 - a 不等于 b
4 - a 大于等于 b
5 - a 大于 b
6 - a 小于等于 b
7 - b 大于等于 a


运算的优先级

技术分享

特别强调:左移相当于乘法,左移几位相当于乘以几个2,相反,右移相当于除,右移几位相当于除以几个2,这个是python中的高级写法,速度更快。

8、bytes类型

 技术分享

bytes不多讲,就是和字符串的互换。

msg = "我爱北京天安门"

print(msg)

print(msg.encode(encoding="utf-8"))

print(msg.encode(encoding=“utf-8”.decode(encoding="utf-8"))

 

9、三元运算

result = 值1 if 条件 else 值2

如果条件为真:result = 值1

如果条件为假:result = 值2

a,b,c = 1,3,5

 

d = a if a>b else c

此时输出的值为5

d = a if a<b else c

此时输出的值为1

 

总结:本部分是需要经常查看的内容,也是今后运用的基础。

python修行之路(三 模块初识及数据运算类型)