语句不加分号 文件后缀py,可直接双击运行 书写格式属于语法的一部分,没有大括号,缩进就是下一级(一个空格也为缩进) 在IDEL新建的程序窗口 程序可保存后直接按F5运行 单行注释 #注释 打印方法 print ("abc") print ("abc","123") 变量声明 s = "abc" 数组 arr = ["abc","1234","7890"] 可使用下标访问字符串和数组 word=['a','b','c','d','e','f','g'] a=word[2] #c b=word[1:3] #['b', 'c'] c=word[:2] #['a', 'b'] d=word[0:] #['a', 'b', 'c', 'd', 'e', 'f', 'g'] f=word[-1] #g g=word[-4:-2] #['d', 'e'] h=word[-2:] #['f', 'g'] i=word[:-2] #['a', 'b', 'c', 'd', 'e'] l=len(word) #7 使用append方法为数组添加元素 word.append('h') 类型转换 int("abc") str(1) 判断 x = -1 if x<0: x=0 print ("x<0") elif x==0: print ("x==0") else: print ("x>0") 注意:缩进属于语法的一部分,一个空格也算缩进,即认为是下一级,所以行数不该有的空格一个也不能有 循环 可用来遍历数组或字符串 a = ['cat', 'window', 'defenestrate'] for x in a: print (x, len(x)) 方法 定义 def 方法名称(参数列表): 方法体,使用return返回值 调用 返回值 = 方法名称(参数列表); 例 def sum(a,b): return a+b r = sum(5,6) print (r) 函数可以存储在变量,例 def sum(a,b): return a+b func = sum r = func(5,6) print (r) 函数形参可以设置默认值 def add(a,b=2): return a+b r=add(1) print (r) r=add(1,5) print (r) 异常示例 s="" if s =="": raise Exception("Input must no be empty.") try: i=int(s) except Exception as e: print "Could not convert data to an integer." else: print "You are %d" % i," years old" finally: print "Goodbye!" 导入其他文件 在文件最开始 # 文件 例: # a.py 导入其他模块 模块其实就是一些函数和类的集合文件,用import来导入相应的模块。要写在文件最开始 例 import codecs import os import sys 接收外部参数 如 cmd--> python d:/aaa.py abc sys.argv[0] = d:/aaa.py sys.argv[1] = abc 读写文件示例 读 spath="D:/test/python/a.txt" f=open(spath,"r") for line in f: print (line) f.close() 写 import codecs spath="D:/test/python/a.txt" f = codecs.open(spath, "w", "utf-8") f.write("abc") f.close() 发送http请求(post) import urllib import urllib2 queryUrl = "www.baidu.com" test_data = {'name':'张三','age':'18'} test_data_urlencode = urllib.urlencode(test_data) req = urllib2.Request(url = queryUrl,data =test_data_urlencode) res_data = urllib2.urlopen(req) returnVal = res_data.read() 有乱码可以试试 import sys reload(sys) sys.setdefaultencoding('utf-8') 类 class Base: def __init__(self): print (self) self.data = [] def add(self, x): self.data.append(x) def addtwice(self, x): self.add(x) self.add(x) # Child extends Base class Child(Base): def plus(self,a,b): return a+b oChild =Child() oChild.add("str1") print (oChild) print (oChild.data) print (oChild.plus(2,3)) __init__方法是一个很特殊的方法,对象创建时自动调用,并将当前对象传入 类中的方法的第一个参数都是调用方法的对象,在调用时不用传入 包(资料) module可以定义在包里面.Python定义包的方式稍微有点古怪,假设我们有一个parent文件夹,该文件夹有一个child子文件夹.child中有一个module a.py . 如何让Python知道这个文件层次结构?很简单,每个目录都放一个名为_init_.py 的文件.该文件内容可以为空.这个层次结构如下所示: parent --__init_.py --child -- __init_.py --a.py b.py 那么Python如何找到我们定义的module?在标准包sys中,path属性记录了Python的包路径.你可以将之打印出来: import sys print sys.path 通常我们可以将module的包路径放到环境变量PYTHONPATH中,该环境变量会自动添加到sys.path属性.另一种方便的方法是编程中直接指定我们的module路径到sys.path 中: import sys sys.path.append('D:\\download') from parent.child.a import add_func print sys.path print "Import add_func from module a" print "Result of 1 plus 2 is: " print add_func(1,2)
python
最新推荐文章于 2023-02-09 10:57:42 发布