【顶2】Python 学习积累
原文参见链接:http://blog.sina.com.cn/s/blog_505bf9af0100wr8l.html
1. Python 学习网址
http://www.erlangsir.com/category/python/page/3/
http://docs.python.org/library/index.html
2. 通过commandline 执行 .py 脚本
首先要将python的安装目录加入到PATH环境变量中。如:
PATH=%PATH%;c:\python27再到你保存py源文件的目录下执行:
<脚本路径> python helloworld.py
3. Python 通过命令行传参数
http://www.cublog.cn/u3/107101/showart_2247117.html
实例:
- import sys
- if(len(sys.argv)>2):
- print "aaaa"
- sys.exit(0)
- print "Commandline parameter 1: ",sys.argv[1]
- print "Commandline parameter 2: ",sys.argv[2]
4. Python 实现socket通讯(TCP)
http://blog.csdn.net/sunboy_2050/article/details/5969480
实例:(在2.7上测试通过)
Server 端代码:
- import socket
- address1=('127.0.0.1',2011)
- s=socket.socket(socket.AF_INET, socket.SOCK_STREAM)
- s.bind(address1)
- s.listen(5)
- cs,address = s.accept()
- print 'got connected from',address
- cs.send('hello I am server,welcome')
- while 1:
- ra=cs.recv(512)
- print ra
Client端代码:
- import socket
- address=('127.0.0.1',2011)
- s=socket.socket()
- s.connect(address)
- data=s.recv(512)
- print 'the data received is/n ',data
- s.send('hihi I am client')
- while 1:
- sInput=raw_input("Enter message and send to server:\n")
- s.send('From client: %s'%sInput)
5. Python 发邮件代码:
参考地址: http://justcoding.iteye.com/blog/918933
- import os
- import smtplib
- import mimetypes
- from email.MIMEMultipart import MIMEMultipart
- from email.MIMEBase import MIMEBase
- from email.MIMEText import MIMEText
- from email.MIMEAudio import MIMEAudio
- from email.MIMEImage import MIMEImage
- from email.Encoders import encode_base64
- def sendMail(subject, text, *attachmentFilePaths):
- gmailUser = 'huichanglee@163.com'
- gmailPassword = '******'
- recipient = 'cheers.lee@foxmail.com'
- msg = MIMEMultipart()
- msg['From'] = gmailUser
- msg['To'] = recipient
- msg['Subject'] = subject
- msg.attach(MIMEText(text))
- for attachmentFilePath in attachmentFilePaths:
- msg.attach(getAttachment(attachmentFilePath))
- mailServer = smtplib.SMTP('smtp.163.com', 25)
- mailServer.ehlo()
- mailServer.starttls()
- mailServer.ehlo()
- mailServer.login(gmailUser, gmailPassword)
- mailServer.sendmail(gmailUser, recipient, msg.as_string())
- mailServer.close()
- print('Sent email to %s' % recipient)
- def getAttachment(attachmentFilePath):
- contentType, encoding = mimetypes.guess_type(attachmentFilePath)
- if contentType is None or encoding is not None:
- contentType = 'application/octet-stream'
- mainType, subType = contentType.split('/', 1)
- file = open(attachmentFilePath, 'rb')
- if mainType == 'text':
- attachment = MIMEText(file.read())
- elif mainType == 'message':
- attachment = email.message_from_file(file)
- elif mainType == 'image':
- attachment = MIMEImage(file.read(),_subType=subType)
- elif mainType == 'audio':
- attachment = MIMEAudio(file.read(),_subType=subType)
- else:
- attachment = MIMEBase(mainType, subType)
- attachment.set_payload(file.read())
- encode_base64(attachment)
- file.close()
- attachment.add_header('Content-Disposition', 'attachment', filename=os.path.basename(attachmentFilePath))
- return attachment
- # start to test
- sendMail('Hi,Cheers Li', 'Greetings from lihuichang')
6. Python 获取本机计算机名和ip
方法一:
- import socket
- name=socket.gethostname()
- print name
- ip_addr=socket.gethostbyname(name)
- print ip_addr
方法二:
- from socket import socket, SOCK_DGRAM, AF_INET
- s = socket(AF_INET, SOCK_DGRAM)
- s.connect(('google.com', 0))
- print s.getsockname()
7. Pyhton 网络编程之多线程
http://www.cnblogs.com/xiamiwolf/archive/2010/02/21/1670132.html
![](http://files.cnblogs.com/files/haochuang/alipay-RedEnvelopes.bmp)
赠人玫瑰
手留余香
我们曾如此渴望命运的波澜,到最后才发现:人生最曼妙的风景,竟是内心的淡定与从容……我们曾如此期盼外界的认可,到最后才知道:世界是自己的,与他人毫无关系!-杨绛先生
如果,您希望更容易地发现我的新博客,不妨点击一下绿色通道的