Python 老男孩教学基础

来源:互联网 发布:台历diy软件 编辑:程序博客网 时间:2024/04/29 04:08
#【py脚本文件、基本输出格式】#!/usr/bin/env pythonprint 'Hello word!'if Ture:  print 'if test1'  print 'if test2'  aa=123bb='123'print type(aa)print type(bb)'''注释'''print '''aaabbbccc'''print "He said 'hi!' "变量(直接写字符):字母、下划线、数字 ; 区分大小写 ;------------------------------------------------------------------------------#【模块导入】>>> import module,sys>>> import test.py>>> from module import funname>>> from os import system>>> import module as newnameimport sysimport readlinereadline.parse and bind('tab: complete')>>> OS.<tab>>>> sys.path>>> sys.system('df')------------------------------------------------------------------------------#【获取输入输出、流程控制】for i info range(3):name = raw_input('What is your name?').strip() #获取控制台输入if len(name) == 0:continueelse:breakwhile ture:name = raw_input('What is your name?').strip()if len(name) == 0:continueelse:breakage = int(raw_input('What is your age?')) #类型转换sex = raw_input('What is your sex?').strip() job = raw_input('What is your job?')print """Personal info:name:  %sage :  %dsex :  %sjob :  %s""" % (name,age,sex,job)print "Your name is %s , it's a good name." % name  #变量输出if age < 28:print "aaaaaaaaaa"elif age ==28:print "bbbbbbbbbb"else:print "cccccccccc"------------------------------------------------------------------------------#【文件读写】f = file('user.txt','w') #新建文件f.write('kk 123456')f.close()os.system('ls')a = file('user.txt','a') #附加到文件a.write('\n')a.write('mm 123456')a.read() #顺序逐行读a.close()#按字节读所有for line in a.read():print line#按行读所以for line in a.readlines():print line----------------------#【列表】names = ['aa','bb','cc]namesnames[0]names[1]names[2]for line in a.readlines():print line[0] #行的字符位置#字符串转列表l = 'user pwd'l.split()l.split('e')a = file('lock.txt') for line in a.readlines():print line[0], #每行的字符位置for line in a.readlines():print line.split(), #转为数组for line in a.readlines():print line.split()[1], #转数组取第二列------------------------------------------------------------------------------#登录验证:#!/usr/bin/env pythonaccount_file = 'account.txt'lock_file = 'lock.txt'for i in range(3):username = raw_input("username:").strip()password = raw_input("password:").strip()if len(username) !=0 and len(password) !=0:f = file(account_file)loginSuccess = Falsefor line in f.readlines():line = line.split()if username == line[0] and password == line[1]:print "Welcome %s login my system" % usernameloginSuccess = Truebreakif loginSuccess is True:breakelse:continueelse:f = file(lock_file,'a')f.write('%s\n' %username)f.close()------------------------------------------------------------------------------#【文件处理】#创建文件(w、r、a、w+、r+、wb、rb)f = file('myfile.txt','w')f.write("Helloword!")f.close#遍历文件内容a = file('myfile')for line in a.readlines():print line,a.close#追加f = file('myfile.txt','a')f.write("append to end")f.close------------------------------import timef = file('test.txt','a')for i in range(10,20):time.sleep(1)f.write('the %s loops\n' % i)f.flush()f.close()------------------------------import fileinputfor line in fileinput.input('test.txt',inplace=1):line = line .replace("aaa","bbb")print line,for line in fileinput.input('test.txt',inplace=1,backup='.bak'):line = line .replace("aaa","bbb")print line,------------------------------------------------------------------------------#【列表】(有序)name_list = ['aaa','bbb','ccc']l = [x for x in range(100)]for i in range(10): name_list.append(i)name_list.index('ccc')name_list.insert(4,'ddd')name_list.count('ddd')name_list.remove('ddd')name_list.pop()name_list.pop(2)name_list.reverse()name_list.sort()name_list.extend([99,100,'kk'])name_list.extend('ABC') $分解每个字符添加name_list[2] = 'CCC'name_list[2:6] #部分列表name_list[10:]name_list[:-5]name_list[1::2]a = [1,2,3,4]b = [2,4,6,8]a + bzip(a,b)for i,v in zip(a,b):print i,vc = []for i in range(10):c.append(i*i)c = [ i*i for i in range(10)]#【元祖】不可更改,操作类似数组d = (1,2,3,4,5,6)d.count()d.index()----------------------------#【字典】无序contacts = {'kk' : 13900001111,'mm' : [13500002222,'student',25],'gg' : {'age': 28},}contacts['kk'] = 123456789#修改del contacts['kk']  #删除contacts['kk hi'] = 123456789 #添加contacts.get('mm')#键打印for i in  contacts:print i#按元祖打印for i in  contacts.items():print i#键值打印for k,v in  contacts.items():print k,vcontacts.keys()   #查看键contacts.values() #查看值contacts.popitem() #删除第一个if contacts.has_key('kk'): print contacts['kk']for i in contacts: print i,i.count('K')----------------------------contact_dic = {}with open('contacts_file.txt') as f:for i in f.readlines():line = i.strip().split()contact_dic[line[0]] = line[1:]print contact_dic.keys()if contact_dic.has_key('kk'):print ...else:for name,value in contact_dic.items():if 'kk' in value:print ...else:print 'no valid record.'------------------------------------------------------------------------------#【函数】---------------------------#!/usr/bin/enc pythondf_name = 'kk'def printmsg2(name=df_name):global adsads = "pppppppp"print "Hello,%s." % nameprintmsg2()printmsg2("mm")print ads---------------------------#!/usr/bin/enc pythondef func1(a,b=5,c=10):print "a is ",a," and b is ",b , " and c is ",cfunc1(3,7)func1(25,c=24)func1(c=50,a=100)---------------------------#!/usr/bin/enc pythondef func1(x,y):        if x > y:                return x        else:                return 100if func1(1,2)==100:        print "11111111"else:        print "22222222"------------------------------------------------------------------------------#【集合】a = [1,4,2,5,4,36,5,4]a = set(a) #列表去重b = set([5,4,6,3,5])a & b  #交集a.intersection(b)  #交集a | b  #并集a.union(b)a - b,b - a  #差集a ^ b #对称差集(左右差集总和)------------------------------------------------------------------------------#【迭代器】a = [1,2,3,4,5]b = iter(a)for i in b: print(i)#【lambda】(匿名/简单函数)a = lambda x:x**2a(3)a = lambda i,j:i+ja(3,10)lambda x:x**2,5d = map(lambda x:x**2, [i for i in range(10)])------------------------------------------------------------------------------#【pickle 序列化】import pickleaccount_info = {'123456':['kk',15000,15000],'123457':['mm',9000,9000],}f = file('account.pkl','wb')pickle.dump(account_info,f)f.close()---------------------#保持为文件#!/usr/bin/env pythonimport picklename_list = {'kk':[29,'IT'],'rain':{'age': 24,'job': 'salse',},'jack': 999}f = file('name_list.pkl','wb')pickle.dump(name_list,f)f.close()---------------------#读取文件import picklef  = file('name_list.pkl')#f.readlines()name_list = pickle.load(f)name_list['kk']name_list['rain']['age']------------------------------------------------------------------------------#【Json】import jsonimport picklef  = file('name_list.pkl')name_list = pickle.load(f)json.dumps(name_list)f  = file('name_list.json')json.load(f)------------------------------------------------------------------------------#【正则表达式】import rep = re.compile('hello')m = p.match('hello world')p.findall('hello worldhello worldhello world')------------------------------------------------------------------------------#【模块】import sysimport osr = os.popen('ls')r.readlines()for line in os.popen('df').readlines(): print line,for line in os.popen('dir').readlines(): print (line)import commandscommands.getoutpout('df')status,results = commands.getoutpout('df')------------------------------#!/usr/bin/env pythonaa = 'kk'pi = 3.14def tellName():print "hello world"if __name__ == '__main__':tellName()------------------------------------------------------------------------------#【异常处理】try:int(raw_input("Please inout your age:"))except ValueError:print "You must input an interger."------------------------------------------------------------------------------