快速学会控制语句

今天先和大家强调一个发邮件的问题

# coding: utf-8import smtplibfrom email.mime.text import MIMEText

mail_host = 'smtp.163.com'receivers = ['[email protected]','[email protected]']
password = '授权码'sender = '[email protected]'msg = MIMEText('Python 发邮件', 'plain', 'utf-8') msg['From'] = sender msg['To'] = ';'.join(receivers) msg['Subject'] = '主题'try: server = smtplib.SMTP() server.connect(mail_host, 25) server.login(sender, password) server.sendmail(sender, receivers, msg.as_string()) server.close() print '发送成功'except smtplib.SMTPException: print '无法发送' 

当我们发送给多人时,就是receivers是多人时,在msg['To']这里必须传';'.join(receivers),你可以直接像上面代码那样写,这样就不会有太多receiver弄混了;第二点就是sendmail方法必须传list类型的数据,大家看到上面代码里我sendmail的第二个参数是receivers,这是一个list,这样才能使收件的所有人都能收到邮件,如果sendmail传的不是list,就会导致只有第一个收件人可以收到邮件,而后面的人收不到邮件。以上代码已经测试通过,大家可以直接复制拿过去。

好,今天我们来讲控制语句。说起控制语句无非是iffor这种:

flaskDemo.py

# coding: utf-8from flask import Flask, render_template

app = Flask(__name__)  # type: Flaskapp.debug = True@app.route('/')def login():
    context = {        "user": { "name": "Warren", "age": 18, "gender": 'male' } } return render_template('index.html', **context)if __name__ == '__main__': app.run() 

index.html

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>控制语句</title></head><body> {# 如果姓名name是Warren,就打印名字,否则打印其他信息 #} {% if user.name == "Warren" %} <p>用户名是Warren</p> {% else %} <p>用户名不是Warren</p> {% endif %}</body></html> 
  • for循环

python知识补充

遍历字典

context = {    "users": [
        {            "name": "Warren",            "age": 18,            "gender": 'male' }, { "name": "Captain", "age": 20 } ], "groups": { "math": "perfect", "Chinese": "Great" } }# 遍历字典的key和valuefor key, value in context.iteritems(): print key, value # 遍历字典的keyfor key in context.iterkeys(): print key # 遍历字典的valuefor value in context.itervalues(): print value 

如果你要遍历字典的keyvalue,那么in后面就要写自点名.iteritems(),这样就会遍历出字典的全部key和对应的value;如果单独遍历key或者value,那么就要写字典名.iterkeys()或者字典名.itervalues()

flaskDemo.py

# coding: utf-8from flask import Flask, render_template

app = Flask(__name__)  # type: Flaskapp.debug = True@app.route('/')def login():
    context = {        "users": [ { "name": "Warren", "age": 18, "gender": 'male' }, { "name": "Captain", "age": 20 } ], "groups": { "math": "perfect", "Chinese": "Great" } } return render_template('index.html', **context)if __name__ == '__main__': app.run() 

index.html

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>控制语句</title></head><body> {# 如果姓名name是Warren,就打印名字,否则打印其他信息 #} {% if users[0].name == "Warren" %} <p>{{ users[0].name }}</p> <p>用户名是Warren</p> {% else %} <p>用户名不是Warren</p> {% endif %} {# for循环 #} <h3>遍历列表</h3> <table> <thead> <th>姓名</th> <th>年龄</th> </thead> <tbody> {% for user in users %} <tr> <td>{{ user.name }}</td> <td>{{ user.age }}</td> </tr> {% endfor %} </tbody> </table> <h3>遍历字典</h3> {% for key, value in groups.items() %} <p>key: {{ key }};value: {{ value }}</p> {% endfor %}</body></html> 

如果对软件测试、接口测试、自动化测试、面试经验交流。感兴趣可以加软件测试交流:1085991341,还会有同行一起技术交流。
上面html代码中使用了table标签,大家先这么照着写,说实话我也不太明白,会尽快给大家讲一下这个table标签的使用的。

总结

所有的控制语句都是通过{% statement %}来使用,并且都有一个结束语句{% endstatement %},Python中的>, <, !=, >=等判断都可以用在if里,也可以通过and, or,not等进行逻辑判断。
以上内容希望对你有帮助,有被帮助到的朋友欢迎点赞,评论。

猜你喜欢

转载自www.cnblogs.com/Chaqian/p/12939325.html