工业物联网集成了微电子计算技术、通信技术、云平台、大数据技术以及工业生产运营技术,是未来物联网运用最重要的方向。
作者:KingKa Wu 欢迎任何形式的转载,但请务必注明出处。 限于本人水平,如果文章和代码有表述不当之处,还请不吝赐教。

学习参考博客:http://blog.csdn.net/a359680405/article/details/42486689  深表感谢

1、单行注释  #    多行注释 """"""   ''''''

2、字符串可以直接相加、相乘。

3、Python中的变量不需要声明就可以使用。  

4、Python是大小写敏感的,标识符的明明要求与C语言相同。标识符的第一个字母必须是字母或者下划线"_",其他位置的字母可以是字母、数字、下划线。

5、Python中最基本的数据结构是序列,序列中的每个元素被分配了一个序号——即元素的位置,叫做索引。第一个索引是0,第二个是1,而倒数第一个元素可以标记为-1,倒数第二个为-2以此类推。序列的元素可以是之前讲的所有基础数据类型,也可以是另一个序列,还可以是对象。 序列最常用的有两类,元组(tuple)和列表[list]。两者的区别是,列表可以修改,而元组不行。序列可以相加也可以相乘。

分片:    

分片用于截取某个范围内的元素,通过:来指定起始区间(左闭右开区间,包含左侧索引值对应的元素,但不包含右测索引值对应的元素。有几种典型的使用方法,参考举例:

  1. #注意不包括右边索引值对应的元素 >>> num = [1,2,3,4,5,6,7,8,9,10] >>> num[3] 4 >>> num[6] 7 >>> num[3:6] [4, 5, 6] #留意右边边界 >>> num[3:9] [4, 5, 6, 7, 8, 9] #右边越界,刚好是10对应的下一个索引值 >>> num[3:10] [4, 5, 6, 7, 8, 9, 10] #右边越界 >>> num[3:11] [4, 5, 6, 7, 8, 9, 10] #注意是不包含最后一个元素的 >>> num[-3:-1] [8, 9] >>> num[-4:-1] [7, 8, 9] >>> num[-10:-1] [1, 2, 3, 4, 5, 6, 7, 8, 9] #注意右边界 >>> num[-10:0] [] >>> num[-5:-1] [6, 7, 8, 9] #注意右边界 >>> num[-5:] [6, 7, 8, 9, 10] >>> num[-5:1] []>>> num[3:1] [] >>> num[3:-1] [4, 5, 6, 7, 8, 9] #取最右3个元素 >>> num[-3:] [8, 9, 10] #取最左3个元素 >>> num[:3] [1, 2, 3] #可以加入step length >>> num[1:10:3] [2, 5, 8] >>> num[0:10:3] [1, 4, 7, 10] #起始位置默认为最左和最右,但不包括最右的元素 >>> num[::2] [1, 3, 5, 7, 9] >>> num[0:9:1] [1, 2, 3, 4, 5, 6, 7, 8, 9] >>> num[0:10:1] [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] #如果step length为0,会报错,也就是说步长不可以为0 >>> num[1:5:0] Traceback (most recent call last): File "<stdin>", line 1, in <module> ValueError: slice step cannot be zero #如果步长为负数,表示从右向左提取元素 #注意不包括6对应的元素 num[10:6:-1] [10, 9, 8] #倒序输出 >>> num[10::-1] [10, 9, 8, 7, 6, 5, 4, 3, 2, 1] #从最左边开始 >>> num[:-3:1] [1, 2, 3, 4, 5, 6, 7] >>> num[:3:1] [1, 2, 3] #从最右边开始 >>> num[:3:-1] [10, 9, 8, 7, 6, 5]

词典词典和表类似的地方,是包含有多个元素,每个元素以逗号分隔。但词典的元素包含有两部分,键和值,常见的是以字符串来表示键,也可以使用数字或者真值来表示键(不可变的对象可以作为键)。值可以是任意对象。键和值两者一一对应。与列表和元组不同的是,词典的元素没有顺序。你不能通过下标引用元素。词典是通过来引用。

  1. cidian={'wu':1,'yong':2,'cong':3}
  2. # print(cidian['wu'])
  3. # cidian['wu']=2
  4. # print(cidian)
  5. # cidian["dgds"]=45
  6. # print(cidian)
  7. for key in cidian: #词典的循环调用
  8. print(key,cidian[key])

6、Python的缩进

 空白在Python中是重要的。事实上行首的空白是重要的。它称为缩进。在逻辑行首的空白(空格和制表符)用来决定逻辑行的缩进层次,从而用来决定语句的分组。 这意味着同一层次的语句必须有相同的缩进。每一组这样的语句称为一个块

7、Python函数的定义和调用

函数通过def关键字定义。def关键字后跟一个函数的标识符名称,然后跟一对圆括号。圆括号之中可以包括一些变量名,该行以冒号结尾。接下来是一块语句,它们是函数体。

 

我们可在定义形参的时候直接给参数加一个默认值。值得注意的是带有默认值的形参要放在右边。

8、Python中的类(面向对象)

 

 

 

  1. 代码示例1:
  2. class A:
  3. def methodA(self):
  4. print("methodA")
  5. class B:
  6. def methodB(self):
  7. print("methodB")
  8. class C(A,B):
  9. def methodC(self):
  10. A.methodA(self)
  11. B.methodB(self)
  12. def methodCPlus(self):
  13. super().methodB()
  14. c=C()
  15. c.methodC()
  16. c.methodCPlus()

代码示例二:

  1. class A:
  2. def methodA(self):
  3. print("methodA")
  4. class B(A):
  5. def methodA(self):
  6. print("reWrite methodA")
  7. def methodB(self):
  8. print("methodB")
  9. test=B()
  10. test.methodA()

9、Python中的构造和析构

  1. class Test:
  2. def __init__(self):
  3. self.name="wuyongc"
  4. print(self.name)
  5. name="fdg"
  6. Test() #临时对象
  7. t=Test()
  8. t.__init__()

10、

11、Python文件的输入和输出

 

12、 异常捕捉

 

代码示例:简单计算器

  1. def add(a,b):
  2. return a+b
  3. def sub(a,b):
  4. return a-b
  5. def divided(a,b):
  6. return a*b
  7. def chufa(a,b):
  8. return a/b
  9. while(1):
  10. try :
  11. w=input("请输入a:")
  12. y=input("请输入b:")
  13. d=input("请输入操作 "
  14. "1:+ "
  15. "2:- "
  16. "3:* "
  17. "4:/ :")
  18. # print(w,y,d)
  19. # print(type(w),type(y),type(d))
  20. a = int(w)
  21. b = int(y)
  22. c= int(d)
  23. # print(type(a),type(b),type(c))
  24. if c==1:
  25. d=add(a,b)
  26. elif c==2:
  27. d=sub(a,b)
  28. elif c==3:
  29. d=divided(a,b)
  30. elif c==4:
  31. d=chufa(a,b)
  32. print(d)
  33. except ZeroDivisionError:
  34. print("不能为0!")
  35. except:
  36. print("输入有误!")


3.python中is和 == 的区别Python中,is检查两个对象是否是同一个对象,而==检查他们是否相等.

  1. p = [1]  
  2. q = [1]  
  3. is q # False 因为他们不是同一个对象  
  4. p == q # True 因为他们的值相等  

所以如果你要比较两个值是否相同就用==,如果比较是否是同一个对象就用is.
其实python中的is比较的对象很像C语言中的指针,只有地址相同的指针才是同一个指针.

13、Python中的标准库

http://blog.csdn.net/a359680405/article/details/42421307

http://blog.csdn.net/a359680405/article/details/42421597

14、Python多进程和多线程

http://blog.csdn.net/a359680405/article/details/51205212

Python通过两个标准库_thread(python2是thread)和threading提供对线程的支持。_thread提供了低级别的、原始的线程以及一个简单的锁。

_thread

  1. import _thread
  2. import time
  3. # 一个用于在线程中执行的函数
  4. def foo(arg):
  5. for i in range(100):
  6. print(arg,i)
  7. time.sleep(1)
  8. print(arg)
  9. # 结束当前线程
  10. # 这个方法与_thread.exit_thread()等价
  11. _thread.exit() # 当func返回时,线程同样会结束
  12. # 启动一个线程,线程立即开始运行
  13. # 这个方法与_thread.start_new_thread()等价
  14. # 第一个参数是方法,第二个参数是方法的参数
  15. _thread.start_new(foo,("线程1",)) # 方法没有参数时需要传入空tuple
  16. # 创建一个锁(LockType,不能直接实例化)
  17. # 这个方法与_thread.allocate_lock()等价
  18. lock = _thread.allocate()
  19. # 判断锁是锁定状态还是释放状态
  20. print (lock.locked()) #输出为False
  21. # 锁通常用于控制对共享资源的访问
  22. count = 0
  23. # 获得锁,成功获得锁定后返回True
  24. # 可选的timeout参数不填时将一直阻塞直到获得锁定
  25. # 否则超时后将返回False
  26. if lock.acquire():
  27. print (lock.locked()) #输出为True
  28. # 释放锁
  29. lock.release()
  30. # _thread模块提供的线程都将在主线程结束后同时结束,
  31. time.sleep(4)

threading

 

posted on 2017-08-08 17:46  KingKa_Wu  阅读(286)  评论(0编辑  收藏  举报