我一直试图让我的应用程序将一些输出的文本邮寄到电子邮件中.为了简化,我已经分离了脚本:
import smtplib
import sys
import os
SERVER = "localhost"
FROM = os.getlogin()
TO = [raw_input("To : ")]
SUBJECT = "Message From " + os.getlogin()
print "Message : (End with ^D)"
TEXT = ''
while 1:
line = sys.stdin.readline()
if not line:
break
TEXT = TEXT + line
# Prepare actual message
message = """\
From: %s
To: %s
Subject: %s
%s
""" % (FROM, ", ".join(TO), SUBJECT, TEXT)
# Send the mail
server = smtplib.SMTP(SERVER)
server.sendmail(FROM, TO, message)
server.quit() …Run Code Online (Sandbox Code Playgroud) 我现在正在使用Yesod框架,并且自己认为制作一个小型CMS将是一个很好的项目.
目前我正在努力实现另一种布局而不是defaultLayout.比方说,对于CMS的管理区域,您将拥有一个与defaultLayout非常不同的adminLayout.
有没有办法"复制"defaultLayout,以及如何? - 或者我应该采取另一种方法吗?
另外,我对Yesod和Haskell都很新,但我正在咀嚼它:)
编辑:
正如您所看到的,我最终回答了自己的问题.这就是说,如果有人有更好的方法来解决这个问题,我会非常乐意接受他们的问题.
我在创建GUI时遇到了一些问题.这是在改变背景时,我可以改变整个背景,也可以改变标签等的背景,但是当涉及按钮和输入字段等时,按钮后面有一个白色区域,我似乎无法改变:S
问题可以在下面的图片中看到.
(没有足够的声誉来发布图片,所以会链接它) http://www.thesite.dk/upload/media/tkinter.png
随着代码:
from Tkinter import *
background = "BLACK"
textColor = "WHITE"
root = Tk()
root.configure(bg=background)
Email = Label(root, text="Enter E-mail Address :", font=("Lucida Grande", 12), fg=textColor, background=background)
Email.grid(row=6, column=0, sticky=NW, padx=19)
EmailField = Entry(root, width=30)
EmailField.grid(row=6, column=0, columnspan=3, sticky=NW, padx=159)
EmailButton = Button(root, text="Mail It !", background=background)
EmailButton.grid(row=6, column=0, columnspan=6, sticky=NW, padx=389)
SM_Status = StringVar()
EmailStatus = Label(root, textvariable=SM_Status, font=("Lucida Grande", 12), fg=textColor, background=background)
EmailStatus.grid(row=6, column=2, sticky=NW, padx=20)
Run Code Online (Sandbox Code Playgroud)
可能有一个简单的解决方案,但无数的谷歌和几个小时的阅读文档和论坛帖子让我无处可去:(我希望你能帮助...
是的,我正在使用Mac OS X和python 2.6
所以我的问题是,如果有一个PING,我怎么能让我的机器人听,如果在一分钟的间隔内没有ping,它会像连接丢失一样做出反应.怎么会这样做呢?
编辑:
这是用于注册连接余量的工作代码(尽管重新连接时遇到问题):
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys
import socket
import string
import os
import platform
import time
# Variables
HOST = "irc.channel.net"
PORT = 6667
NICK = "Botname"
IDENT = "Botname"
REALNAME = os.getenv('USER')
CHAN = "##ChannelName"
readbuffer = ""
# Our IRC connection
irc = socket.socket()
irc.settimeout(300)
connected = False
def connection(host, port, nick, ident, realname, chan):
while connected is False:
try:
irc.connect((host, port))
irc.send("NICK %s\r\n" % nick)
irc.send("USER %s %s bla :%s\r\n" % …Run Code Online (Sandbox Code Playgroud) 动机:能够在Free/ Freer-style中控制MTL中的效果.
这个例子可能有点做作 - 想象一个带有一些基本操作的程序(使用GHC 8.2 freer-simple),
#!/usr/bin/env stack
-- stack --resolver lts-10.2 --install-ghc runghc --package freer-simple
{-# LANGUAGE GADTs #-}
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE LambdaCase #-}
import Control.Monad.Freer
data Effect next where
ReadFilename :: String -> Effect String
WriteOutput :: Show a => a -> Effect ()
Computation :: Int -> Int -> Effect Int
readFilename :: Member Effect effs => String -> Eff effs String
readFilename = send …Run Code Online (Sandbox Code Playgroud)