下面是自己学习的心得,贴到这里给大家,参考参考。有不足的请多多指出
1.Jpython运行于java环境
2.python是默认的C
3.效率python要比jpython要快
4.编写的脚本并无区别
5.语句块使用的是代码缩进
6.py文件中使用中文需要 在第一行 使用 # -*- coding:utf-8 -*-
7.python 3中使用input 而不是 raw_input
8.print中的逗号是一个空格来的
9.int(str) 用在python3里头
10.元组的内容不能改变,而列表可以
列表[] list
元组()tuple
字典{} 字典是无序的 dictionary
11.文件的操作
open
close
12.模块用的py后缀,模块就是脚本
13.导入模块 import 或者 from
这样调用某个函数可以只用函数名,可以忽略模块名字
from string import capitalize
要使用所有函数 则使用*
14.发布的时候可以用来编译
15.类私有成员用 用双划线 __mybookname, 类的方法必须包含参数self
16.双划线开始和结束的是专有函数 __init__ __del__
17.继承语法 class myclass (hermitation1,hermitation2,....)
18.python内部的数据如果要 自身的方法 访问,需要加 self.xxxx
19.单独继承的时候, 如果有构造函数,需要在子类中声明然后传给父类
20.构造函数需要在类对象化的时候就会执行
21.关于重载,只需要重新写一遍函数名就可以,如果要调用旧的函数,就用类名.方法来解决
在__init__()中不要忘记添加self 参数
22.异常 ,使程序更加健壮,try assert
23.底层编写扩展可以使用C,注重效率
24. python3的 import thread 没有效果。
1,“import thread”问题,2.x中的模块thread在3.x中编程"_thread"(需要在前面加一个下划线).否则会出现“ImportError: No module named thread
25.__thread.start_new_thread() 返回的是线程标识符
26.线程里需要在构造函数里头添加 初始化 threading.Thread.__init(self)__
27.跟线程有关的函数
.start()
.join() 、//同步的时候比较重要
.isAlive()
setDaemon() 使用这个函数之后,无论子线程是否结束,一旦主线程结束了 就子线程也跟着退出
28.全局变量用global ,而且要先定义
x=0
global x
29.urllib2在python3中不支持
30.Racing condition 同时CPU或者线程对一个变量进行操作,造成竞争状态。
从而引入了 锁的概念
31.线程同步
使用event和wait可以让同一时刻某个进程运行,event.isset的时候wait可以直接跳过
32.文件
f=file(name,mode) a追加 w r a
f.write("string")
f.close()
在3中使用的是open
33.关于print
print("hello %s world" % os.getcwd()) 可以方便一些替换字符
34. [] 这个是列表
35. string 字符串可以直接数学运算
i.e a="k"
b=a*5
此时 b有5个k
36. os.system("notepad python.txt")
37.Tkinter
import tkinter (在python3.x)
root=tkinter.Tk()
root=mainloop()
很简单的控件语言
一行的文本叫 entry
多行的叫text
不可改的用label
38. 控件放置使用 pack, place
button1=tkinter.Button(,,,,,,)
39.图形
tkinter.PhotoImage 不能识别jpg
40.编译成 exe
41. tk退出函数
exit=Tkinter.Button(root,text="Exit",command=sys.exit)
42. 网络相关的函数:
data=urllib.urlopen(url)
content=data.read()
43.
使用列表构建 队列 先进先出
self.queue=self.queue[1:]
44. for i in range(10)
i 从0 到 9 不会有10
45.python的注释 # 单行注释
46.sys.argv.pop(0) 作用 弹出第0个参数,然后移除