最近在学习tomcat+mysql开发web,在安装和卸载mysql的过程中遇到了一些问题,折腾了我好几天。在这里给大家教一下完整的卸载mysql的过程。
有时候之前安装过mysql卸载后又重新安装的过程中,安装好的mysql进不去,让人觉得很心烦,自己已经卸载了,重新装了后为什么进不去呢》?? 原因是卸载过程并不完整。我把过程中分为以下几个过程。
1:到控制面板———添加或删除程序里找到mysql选择卸载;
2:把这个文件也删除了X:\Program Files\MySQL,就是把这个目录也删除了;
3:下面也就是最重要的一点,也是让很多人困惑的一点。其实mysql的安装过程中已经在这个目录默认了一个mysql文件;
在X:\Documents and Settings\All Users\Application Data在这个目录下还有一个mysql文件,把这也删除了,这就完美卸载了。
接下来你就能重新安装你的mysql了,然后进行配置。
嘿嘿,祝你们成功。 我是个大菜鸟,希望能帮助到一些和我一样的菜鸟,少走弯路,我走了,你就不要了!! ......
因为工作中一个项目需要在运行过程中支持可以随时修改和便于管理的运行流程和配置参数管理,所以决定使用嵌入Python的方式实现,但是项目是多线程的,所以需要确定Boost Python的多线程支持程度,做了一些尝试。
1、Boost Python不支持多线程:
使用Boost ThreadPool简化多线程环境,尝试如下:
void Pytest1()
{
Py_Initialize();
PyRun_SimpleString("from time import time,ctime\n"
"print 'Today is',ctime(time())\n");
Py_Finalize();
}
void do_task()
{
for (int i = 0; i < 10; ++i)
{
Pytest1();
}
boost::xtime xt;
boost::xtime_get(&xt, boost::TIME_UTC); // initialize xt with current time
xt.sec += 1; // change xt to next second
boost::thread::sleep(xt); // do sleep
}
void Pytest3()
{
pool tp(5);
Py_Initialize();
// Add some tasks to the pool.
for (int i = 0 ; i <= 5; ++i)
{
tp.schedule(&do_task);
}
// Wait until all tasks are finished.
tp.wait();
Py_Finalize();
}
& ......
Python字符串操作
python如何判断一个字符串只包含数字字符
python 字符串比较
下面列出了常用的python实现的字符串操作
1.复制字符串
#strcpy(sStr1,sStr2)
sStr1 = 'strcpy'
sStr2 = sStr1
sStr1 = 'strcpy2'
print sStr2
2.连接字符串
#strcat(sStr1,sStr2)
sStr1 = 'strcat'
sStr2 = 'append'
sStr1 += sStr2
print sStr1
3.查找字符
#strchr(sStr1,sStr2)
sStr1 = 'strchr'
sStr2 = 'r'
nPos = sStr1.index(sStr2)
print nPos
4.比较字符串
#strcmp(sStr1,sStr2)
sStr1 = 'strchr'
sStr2 = 'strch'
print cmp(sStr1,sStr2)
5.扫描字符串是否包含指定的字符
#strspn(sStr1,sStr2)
sStr1 = '12345678'
sStr2 = '456'
#sStr1 and chars both in sStr1 and sStr2
print len(sStr1 and sStr2)
6.字符串长度
#strlen(sStr1)
sStr1 = 'strlen'
print len(sStr1)
7.将字符串中的小写字符转换为大写字符
#strlwr(sStr1)
sStr1 = 'JCstrlwr'
sStr1 = sStr1.upper()
print sStr1
8.追加指定长度的字符串
#strncat(sStr1,sStr2,n)
sStr1 = '12345'
sStr2 = 'abcdef'
n = 3
sStr1 += sStr2[0:n]
print sStr1
9.字符串 ......
运行一句python命令
对vc设置路径
include:D:\PYTHON31\INCLUDE
lib:D:\PYTHON31\LIBS
#include "stdafx.h"
#include "python.h"
int main(int argc, char* argv[])
{
Py_Initialize() ;
PyRun_SimpleString("print('Hello')");
//PyRun_SimpleString("print(dir())");
Py_Finalize();
return 0;
}
编译、连接
拷贝D:\Python31\python31.dll到exe文件目录
运行,输出到控制台
可以运行多行命令
Py_Initialize() ;
PyRun_SimpleString("x=100");
PyRun_SimpleString("print(x)");
PyRun_SimpleString("a=x*x\nprint(a)\n");
Py_Finalize();
相当于在python下运行下列代码
x=100
print(X)
a=x*x
print(a)
控制台输入
以下代码解释控制台输入
#include "stdafx.h"
#include "python.h"
int main(int argc, char* argv[])
{
Py_Initialize() ;
PyRun_AnyFile(stdin,NULL);
Py_Finalize();
return 0;
}
读取python变量值
将python运行结果读取到vc中
char *cstr;
PyObject *pstr;
PyObject *main_ ......
最近又重新装上了windows 7感觉还是那样,主要是想用M8SDK写些程序。也想在windows上玩玩,一直都觉得用C写一些常用的东东很复杂,只有借助于解释性语言了,在python, ruby间选择,最终用Python。
python的语法非常简单,对于一个学过编程的人可能一上午就差不多了,不过python的强大之处在于它有N多的库可以方便我们处理问题,熟悉这些库则要花一些时间。
实际上装上python3后使用一真不怎么顺,因为经常找不到库文件,而库文件实际上是在那里的,在google上搜索也没有答案,很是郁闷。
今天又重新把python3.1卸载重装了下,发现一个奇怪的现象。
我写了一个文件html.py#!cmd
import urllib
import urllib.request
html = urllib.request.urlopen('http://shenzhen.8684.cn/x_7ba0b811')
content = html.read()
print( content )
print( content.decode( 'gbk' ) )
放在D:\Python目录下(我的安装目录是C:\Python31),cmd下进入D:\Python目录,运行python.exe html.py,提示错误:
Traceback (most recent call last):
File "D:\Program\html.py", line 2, in <module>
import urllib
File "D:\Program\urllib.py", line 1, in <modu ......
# -*- coding: cp936 -*-
from email.MIMEText import MIMEText
from email.MIMEMultipart import MIMEMultipart
import smtplib
#创建一个带附件的实例
msg = MIMEMultipart()
#构造附件
att = MIMEText(open('e:\\test.txt').read(), 'base64', 'gb2312')
att["Content-Type"] = 'application/octet-stream'
#att["Content-Disposition"] = 'attachment; filename="e:\\test.txt"' 以附件形式发送
msg.attach(att)
mailto_list=["wsywfw3@163.com"]
#####################
# 设置服务器,用户名、口令以及邮箱的后缀
mail_host="smtp.163.com"
mail_user="wsywfw3@163.com"
mail_pass="7451920"
mail_postfix="163.com"
######################
def send_mail(to_list,sub,content):
'''
to_list:发给谁
sub:主题
content:内容
send_mail("aaa@126.com","sub","content")
'''
......