python基础---->python的使用(三)

  今天是2017-05-03,这里记录一些python的基础使用方法。世上存在着不能流泪的悲哀,这种悲哀无法向人解释,即使解释人家也不会理解。它永远一成不变,如无风夜晚的雪花静静沉积在心底。

Python的基础学习

一、python中函数作为参数

import math

def add(x, y, f):
    return f(x) + f(y)

print(add(25, 9, math.sqrt)) # 8.0

二、python引用自定义模块

在同目录下面定义两个文件huhx.py和huhx5.py。其中huhx.py作为一个模块供huhx5.py使用。

  • huhx.py文件内容如下:
# defined a module
username = "Linux"

def sayMyName():
    print("My name is ", username)
  • huhx5.py文件内容如下:
import huhx

huhx.sayMyName();
  • 打印效果如下:

三、python文件的读写

# 文件的写,这一般用于写比较短的字符
with open(‘../file/huhx.xml‘, ‘w‘, encoding=‘utf-8‘) as f:
    f.write(‘您好, huhx!‘)
# 文件的读,这一般用于读取比较短的字符
with open(‘../file/huhx.xml‘, ‘r‘, encoding=‘utf-8‘) as f:
    print(f.read())

四、python中stmtp简单发送邮箱

import smtplib
from email.header import Header
from email.mime.text import MIMEText
from email.utils import parseaddr, formataddr

def _format_addr(s):
    name, addr = parseaddr(s)
    return formataddr((Header(name, ‘utf-8‘).encode(), addr))

from_addr = ‘****‘
password = ‘*****‘
to_addr = ‘******‘
smtp_server = ‘smtpcom.263xmail.com‘

msg = MIMEText(‘hello, my name is huhx.‘, ‘plain‘, ‘utf-8‘)
msg[‘From‘] = _format_addr(‘huhx <%s>‘ % from_addr)
msg[‘To‘] = _format_addr(‘linux <%s>‘ % to_addr)
msg[‘Subject‘] = Header(‘subject info‘, ‘utf-8‘).encode()

server = smtplib.SMTP(smtp_server, 465)
server.set_debuglevel(1)
server.login(from_addr, password)
server.sendmail(from_addr, [to_addr], msg.as_string())
server.quit()

如果发送的是html邮件,则将上述的msg改为如下:

msg = MIMEText(‘<html><body><h1>Hello</h1>‘ +
               ‘<p>send by <a href="http://www.python.org">Python</a>...</p>‘ +
               ‘</body></html>‘, ‘html‘, ‘utf-8‘)

如果需要发送附件:

import smtplib
from email import encoders

from email.header import Header
from email.mime.base import MIMEBase
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.utils import parseaddr, formataddr

def _format_addr(s):
    name, addr = parseaddr(s)
    return formataddr((Header(name, ‘utf-8‘).encode(), addr))

from_addr = ‘****‘
password = ‘*****‘
to_addr = ‘***@qq.com‘
smtp_server = ‘smtpcom.263xmail.com‘

# 邮件对象:
msg = MIMEMultipart()
msg[‘From‘] = _format_addr(‘hello <%s>‘ % from_addr)
msg[‘To‘] = _format_addr(‘huhx <%s>‘ % to_addr)
msg[‘Subject‘] = Header(‘subject info‘, ‘utf-8‘).encode()

# 邮件正文是MIMEText:
msg.attach(MIMEText(‘send with file...‘, ‘plain‘, ‘utf-8‘))

# 添加附件就是加上一个MIMEBase,从本地读取一个图片:
with open(‘huhx.png‘, ‘rb‘) as f:
    # 设置附件的MIME和文件名,这里是png类型:
    mime = MIMEBase(‘image‘, ‘png‘, filename=‘test.png‘)
    # 加上必要的头信息:
    mime.add_header(‘Content-Disposition‘, ‘attachment‘, filename=‘test.png‘)
    mime.add_header(‘Content-ID‘, ‘<0>‘)
    mime.add_header(‘X-Attachment-Id‘, ‘0‘)
    # 把附件的内容读进来:
    mime.set_payload(f.read())
    # 用Base64编码:
    encoders.encode_base64(mime)
    # 添加到MIMEMultipart:
    msg.attach(mime)

server = smtplib.SMTP(smtp_server, 465)
server.set_debuglevel(1)
server.login(from_addr, password)
server.sendmail(from_addr, [to_addr], msg.as_string())
server.quit()

五、python中简单的html解析

from html.parser import HTMLParser

class MyHTMLParser(HTMLParser):
    def handle_starttag(self, tag, attrs):
        print("Encountered a start tag:", tag)

    def handle_endtag(self, tag):
        print("Encountered an end tag :", tag)

    def handle_data(self, data):
        print("Encountered some data  :", data)

parser = MyHTMLParser()
parser.feed(‘<html><head><title>Test</title></head>‘
            ‘<body><h1>Parse me!</h1></body></html>‘)

运行的结果如下

Encountered a start tag: html
Encountered a start tag: head
Encountered a start tag: title
Encountered some data  : Test
Encountered an end tag : title
Encountered an end tag : head
Encountered a start tag: body
Encountered a start tag: h1
Encountered some data  : Parse me!
Encountered an end tag : h1
Encountered an end tag : body
Encountered an end tag : html

友情链接

时间: 2024-10-08 02:05:03

python基础---->python的使用(三)的相关文章

Python基础教程(第三版)(六) 抽象

一个菜鸡的挣扎 就总结下 and 如果有大佬不小心看到了发现了错误,就欢迎指正 6.1懒惰是一种美德 通过创建函数以调用之可以减少代码量 6.2 抽象和结构 抽象是程序能够被人理解的关键所在(无论对编写程序还是阅读来说,这都至关重要) 函数封装了人不需要关心的实现细节,从而更容易被使用和理解 6.3 自定义函数 6.3.1 给函数编写文档 在def后面添加字符串,相当于给整个函数添加注释,以确保被人理解 __doc_ _是函数的一个属性,可用它来访问函数的文档字符串 我自己的练习: def la

Python基础-Python流程控制

上篇文章 Python基础-基础使用 我们已经知道了Python解释器,Python的变量.和Python的输入输出.Python的注释和字符集,这篇文章,我们主要讲Python的流程控制 本文防盗链:http://python789.blog.51cto.com Python基础-Python流程控制 1.条件判断 1.1.if基本使用 if就是一个条件判断的,当满足不同样的条件的时候执行不同的操作,如法如下: if 条件1:     满足条件1 代码框 elif 添加2:     满足条件2

Python基础学习笔记(三)运算符

参考资料: 1. <Python基础教程> 2. http://www.runoob.com/python/python-chinese-encoding.html 3. http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000 ? 运算符 ▼// 整除 ▼ ** 幂次 ▼ !=和<> 不等于 ▼逻辑运算符:and与 or或 not非 ▼ 成员运算符:① in 如果在指定序列

Python基础学习笔记(三)

python 基础笔记之寻求帮助 1.寻求帮助 python中的帮助文档和shell中的一样,也是相当丰富的,可以使用 help(object) 来查看帮助,其中object 是你要查找帮助的对象,比如,查看dir的功能,可以用 >>> help(dir) 2.查看python中的内置函数.内置类,及其他内置对象 >>> dir(__builtins__) 3.查看对象自身的类型或者是函数作用的参数类型 1)查看对象自身的类型:在python交互式shell中直接输入

python基础篇【第三篇】:函数、文件操作

一.函数 什么是函数? 函数是可以实现一些特定功能的小方法或是小程序.在Python中有很多内建函数如:(print()),当然随着学习的深入,也可以学会创建对自己有用的函数.简单的理解下函数的概念,就是你编写了一些语句,为了方便使用这些语句,把这些语句组合在一起,给它起一个名字.使用的时候只要调用这个名字,就可以实现语句组的功能了,自己创建的函数就叫做自定义函数. 函数的特点:可重复使用的,用来实现单一,增强代码的重用性和可读性 定义函数 你可以定义一个由自己想要功能的函数,以下是简单的规则:

重学Python - Day 05 - python基础 -&gt; python的文件操作:r、w、a、r+、a+ 、readline、readlines 、flush等常用的文件方法

文件的读操作 示例: 1 print("->文件句柄的获取,读操作:") 2 3 f = open('无题','r',encoding='utf8') 4 d = f.read() 5 f.close() 6 print(d) 7 8 print('->例二:') 9 f = open('无题','r',encoding='utf8') 10 e = f.read(9) 11 f.close() 12 print(e) 13 #python3中,文件中一个中英文都占位1 运

重学Python - Day 01 - python基础 -&gt; python版本选择+第一个小程序

题外话: Python版本:最新的3.6 安装注意点:勾选添加路径后自定义安装到硬盘的一级目录,例如本人的安装路径: F:\Python 原因:可以自动添加python环境变量,自动关联.py文件,其余的优点很多,例如学习selenium的,使用pip install selenium命令就可以安装selenium 3了,虽然python webdriver的自动化还是2.7居多,但是3.0会是未来 闲言碎语以后再说,现在正式开始学习Python,没办法,不会编程的测试在工作中好吃力,学不会py

python基础整理笔记(三)

一. python的几种入参形式:1.普通参数: 普通参数就是最一般的参数传递形式.函数定义处会定义需要的形参,然后函数调用处,需要与形参一一对应地传入实参. 示例: 1 def f(a, b): 2 print(a,b) 3 f(1, 2) 2. 指定参数: 指定参数就是在函数调用时,给传入的实参加上其对应的形参的参数名,这样实参的顺序就可以不用和形参完全一一对应的顺序. 示例: 1 def f(a, b): 2 print(a, b) 3 f(b=1, a=2) 3. 默认参数: 默认参数是

Python基础之【第三篇】

def 函数名(参数): ... 函数体 ... 函数的定义主要有如下要点: def:表示函数的关键字 函数名:函数的名称,日后根据函数名调用函数 函数体:函数中进行一系列的逻辑计算,如:发送邮件.计算出 [11,22,38,888,2]中的最大数等... 参数:为函数体提供数据 返回值:当函数执行完毕后,可以给调用者返回数据. 以上要点中,比较重要有参数和返回值: 和其他高级语言区别:1.声明函数名尾部要有冒号.2.它不需要用花括号将语句块括起来,用TAB键缩进. 函数式编程最重要的是增强代码