跳至主要內容
使用Homebrew安装Mysql全过程

步骤

  1. 安装 Homebrew,详细步骤参见 Homebrew 官网。
  2. brew doctor 确认brew在正常工作。
  3. brew update 更新包。
  4. brew install mysql 安装 mysql

AndersonHJB原创...大约 4 分钟HTMLpythonHTMLpython
「灰产?」Python生成电话号码并检测有效性

你好,我是悦创。

在之前的内容中,我们分享了办公自动化的 Excel 写入。

那现在这个部分呢,就是为了给你更好的练习,我来带你实现:自动生成电话号码并使用 api 验证电话号码有效性。

# -*- coding: utf-8 -*-
# @Time    : 2022/10/13 19:27
# @Author  : AI悦创
# @FileName: hw01.py
# @Software: PyCharm
# @Blog    :https://bornforthis.cn/
import requests
import random, xlwt


# SET_PHONE = set()


def parse_loop(value):
	template = "{haoduan}{weihao}"
	# weihao = random.randrange(10000000, 99999999)
	weihao = random.randint(11111111, 99999999)
	# print(weihao)
	# global phone_number
	phone_number = template.format(haoduan=value, weihao=weihao)
	# print(key, phone_number)
	return phone_number


def generate_phone():
	phone_dict = {
		"中国联通": ['130', '131', '132', '145', '155', '156', '166', '175', '176', '185', '186', '196'],
		"中国电信": ['133', '149', '153', '180', '181', '189', '173', '177', '190', '191', '193', '199'],
		"中国移动": ['134', '135', '136', '137', '138', '139', '147', '150', '151', '152', '157', '158', '159', '172',
		             '178', '182', '183', '184', '187', '188', '195', '197', '198'],
	}

	key = random.choice(list(phone_dict.keys()))
	value = random.choice(phone_dict[key])
	phone_number = parse_loop(value)
	# return key, phone_number
	return phone_number


# 手机号码归属地查询 Python示例代码
def jude_phone(phone_number: str):
	url = 'https://hcapi02.api.bdymkt.com/mobile'
	params = {}
	params['mobile'] = phone_number

	headers = {
		'Content-Type': 'application/json;charset=UTF-8',
		'X-Bce-Signature': 'AppCode/38c548d4357c487185d818ed4da79a1a'
	}
	r = requests.request("GET", url, params=params, headers=headers)
	# print(r.json())
	return r.json()


def phone_number_exists(json):
	if json["code"] == 200:
		key = json["data"]["types"]
		city = json["data"]["city"]
		city_code = json["data"]["city_code"]
		prov = json["data"]["prov"]
		return [key, city, city_code, prov]
	elif json["code"] == 400:
		return False


def write_excel(content):
	wb = xlwt.Workbook()
	sheet = wb.add_sheet("sheet")
	head_data = ["手机号", "类型", "城市", "城市代号", "省份"]
	for index, head in enumerate(head_data):
		sheet.write(0, index, head)
	for row, detail_list in enumerate(content):
		sheet.write(row+1, 0, detail_list[0])
		sheet.write(row+1, 1, detail_list[1])
		sheet.write(row+1, 2, detail_list[2])
		sheet.write(row+1, 3, detail_list[3])
		sheet.write(row+1, 4, detail_list[4])
	wb.save("phone.xls")



def main():
	r = []
	for _ in range(1000):
		result_lst = []
		phone_number = generate_phone()
		r_json = jude_phone(phone_number)
		result_exists = phone_number_exists(r_json)
		if result_exists:
			result_lst.append(phone_number)
			result_lst.extend(result_exists)
			r.append(result_lst)
			print("result_lst:>>>", result_lst)
		else:
			print("continue...")
			continue
	write_excel(r)


if __name__ == '__main__':
	main()

# print(generate_phone())

AI悦创原创...大约 2 分钟pythonPython 练习pythonPython 练习
Python题目:电影院,函数调用,实现'查看热映电影','订票','查看订单','退票','结账','影评'的功能

你好,我是悦创。

def fun1():
    for i, j in enumerate(re_menu, start=1):
        print('{}、{}\t{}'.format(i, j[0], j[1]))
def fun2():
    while True:
        sel = int(input('请输入选择的电影:'))
        if 1<=sel<=4:
            selected.append(re_menu[sel - 1])
            number = int(input('请问定几张:'))
            count.append(number)
            ctn = int(input('是否继续购票?(0结束,其他数字继续):'))
            if ctn == 0:
                break
        else:
            print('输入错误!')

def fun3():
    print('序号      电影名      票价      张数')
    for i,j in enumerate(selected,start=1):
        print('{}      {}      {}      {}'.format(i,j[0],j[1],count[i-1]))
def fun4():
    while True:
        print('删除前')
        print('序号      电影名      票价      张数')
        for i, j in enumerate(selected, start=1):
            print('{}      {}      {}      {}'.format(i, j[0], j[1], count[i - 1]))
        dlt = int(input('请输入要删除的订单序号:'))
        del selected[dlt - 1]
        del count[dlt - 1]
        print('删除后')
        print('序号      电影名      票价      张数')
        for i, j in enumerate(selected, start=1):
            print('{}      {}      {}      {}'.format(i, j[0], j[1], count[i - 1]))
        re_ctn=int(input('是否继续删除?(0退出/其他数字继续删除):'))
        if re_ctn==0:
            break
def fun5():
    tatle_money=0
    for i,j in enumerate(selected):
        tatle_money+= j[1]*count[i]
    print(tatle_money)
    print('您一共花费:{}元'.format(tatle_money))
def fun6():
    ev=input('请输入您的影评:')
    evaluate.append(ev)
    look=int(input('客官谢谢您的影评!(1查看影评/其他结束)'))
    if look==1:
        print(evaluate)
    else:
        print('欢迎下次再来!您慢走!')
menu=['查看热映电影','订票','查看订单','退票','结账','影评']
re_menu=[['智取威虎山',30],['第一滴血',80],['大圣归来',40],['哪吒',50]]
selected=[]
count=[]
evaluate=[]
while True:
    for i, j in enumerate(menu, start=1):
        print('{}、{}'.format(i, j))
    print('===============================')
    num = int(input('请输入选择功能的编号:'))
    if num == 1:
        fun1()
    elif num == 2:
        fun2()
    elif num == 3:
        fun3()
    elif num == 4:
        fun4()
    elif num==5:
        fun5()
    elif num==6:
        fun6()
    print('===============================')
    all_ctn=int(input('是否继续功能选择(0退出)'))
    if all_ctn==0:
        break

AI悦创原创...大约 2 分钟pythonPython 练习pythonPython 练习
Python 指定浏览器打开网页 / 文件

一、Python 打开浏览器的方法:

  1. startfile 方法(打开指定浏览器)
import os
os.startfile("C:\Program Files\internet explorer\iexplore.exe")

AI悦创原创...大约 2 分钟pythonpython
Python 求解多元多次方程组或非线性方程组

一、多元多次方程

1.1 定义

你好,我是悦创。

我们常见的方程组有一元一次方程组,比如 x+3=5 这种,很简单很好解。

二元一次方程组,即方程组中有两个未知数,未知数的最高次数为1。

二元二次方程组:方程组中有两个未知数,未知数的最高次数为 2。此类方程组均有公式解法或者成形的解法。

但是面临多元多次方程组,解法错综复杂,是数学家们研究的内容。为了更好的解决此类问题,我们可以用 Python 来实现。

1.2 例子

多元多次方程组例如下面这种,三元二次方程组:


AI悦创原创...大约 4 分钟pythonpython
浅谈 Python startswith/endswith 实现原理

你好,我是悦创。

废话少说,直接上代码。

In [1]: s = "aiyuechuang"

In [2]: s.startswith("ai")
Out[2]: True

In [3]: s.startswith("a")
Out[3]: True

In [4]: s.startswith("a000ss")
Out[4]: False

In [5]: s.endswith("hjb")
Out[5]: False

In [6]: s.endswith("g")
Out[6]: True

In [7]: s.endswith("og")
Out[7]: False

In [8]: s.endswith("ng")
Out[8]: True

AI悦创原创...大约 2 分钟pythonpython
How to create DataFrame with feature importance from XGBClassifier made by GridSearchCV?

I use GridSearchCV of scikit-learn to find the best parameters for my XGBClassifier model, I use code like below:

grid_params = {
      'n_estimators' : [100, 500, 1000],
      'subsample' : [0.01, 0.05]
}

est = xgb.Classifier()
grid_xgb = GridSearchCV(param_grid = grid_params,
                        estimator = est,
                        scoring = 'roc_auc',
                        cv = 4,
                        verbose = 0)
grid_xgb.fit(X_train, y_train)

print('best estimator:', grid_xgb.best_estimator_)
print('best AUC:', grid_xgb.best_score_)
print('best parameters:', grid_xgb.best_params_)

AI悦创原创...大约 2 分钟stackoverflowpythonmachine-learningscikit-learnxgboostgridsearchcvstackoverflowpythonmachine-learningscikit-learnxgboostgridsearchcv
Python 二进制,十进制,十六进制转换

你好,我是悦创。

接下来来编写 Python 中的进制转换,我们来一一编写。

十六进制 转 十进制

使用 int() 函数 ,第一个参数是字符串 '0Xff' ,第二个参数是说明,这个字符串是几进制的数。转化的结果是一个十进制数。

In [1]: int("0xf", 16)
Out[1]: 15

AI悦创原创...大约 2 分钟pythonpython
2