[Python] 练习代码
# from random import randrange
# num = int(input('摇几次骰子: '))
# sides=int(input('筛子有几个面: '))
# sum=0
# for i in range(num):
# sum+= randrange(sides)+1
# print('最终的点数和是 ',sum,'平均点数是:',sum/num) # from random import shuffle
# from pprint import pprint
# values=list(range(1,11))+'Jack Queen King'.split() #并入列表中
# card_suits='diamonds clubs hearts spades'.split()
# value_suit=['{} of {}'.format(v,c) for v in values for c in card_suits]
# shuffle(value_suit) #打乱顺序
# pprint(value_suit[:12])
# while value_suit:
# input(value_suit.pop()) f=open('a123.txt','a')
f.write('hello aaaaaaaaaaaaadddddddddddddddddd')
f.close() f=open('a123.txt','r')
for i in range(10):
print(f.readline(),end='') f = open('a123.txt','a')
f.write('This\nis no\nhaikou')
f.close() def process(string):
print('处理中...',string) # with open('a123.txt','r') as f:
# while True:
# line=f.readline()
# if not line:
# break
# process(line)
with open('a123.txt','r') as f:
for line in f:
process(line) with open('a123.txt','r') as f:
for line in f.readlines():
process(line) def triangles():
row = [1]
while True:
yield(row)
row = [1] + [row[k] + row[k + 1] for k in range(len(row) - 1)] + [1]
n = 0
results = []
for t in triangles():
print(t)
results.append(t)
n = n + 1
if n == 10:
break
if results == [
[1],
[1, 1],
[1, 2, 1],
[1, 3, 3, 1],
[1, 4, 6, 4, 1],
[1, 5, 10, 10, 5, 1],
[1, 6, 15, 20, 15, 6, 1],
[1, 7, 21, 35, 35, 21, 7, 1],
[1, 8, 28, 56, 70, 56, 28, 8, 1],
[1, 9, 36, 84, 126, 126, 84, 36, 9, 1]
]:
print('测试通过!')
else:
print('测试失败!') ' a test module ' __author__ = 'Michael Liao' import sys def test():
args = sys.argv
if len(args)==1:
print('Hello, world!')
elif len(args)==2:
print('Hello, %s!' % args[1])
else:
print('Too many arguments!') if __name__=='__main__':
test() class Student(object):
pass
bart = Student()
bart.name='jojo'
bart.name class Student(object):
def __init__(self, name, score):
self.name = name
self.score = score def get_grade(self):
if self.score >= 90:
return 'A'
elif self.score >= 60:
return 'B'
else:
return 'C' gg=Student('aaa',100)
gg.get_grade() for c in "python":
if c=='t':
continue
print(c,end=' ') s='python'
while s !='':
for c in s:
print(c,end='')
s=s[:-1] import random
from pprint import pprint
pprint(random.seed(10))
random.random() from random import random
from time import perf_counter
DARTS=1000*10000
hits=0.0
start=perf_counter()
for i in range(1,DARTS+1):
x,y=random(),random()
dist=pow(x**2+y**2,0.5)
if dist <= 1:
hits=hits+1
pi = 4*(hits/DARTS)
print("圆周率值是:{}".format(pi))
print('运行时间是:{:.20f}s'.format(perf_counter()-start)) import requests
r=requests.get('http://www.shipxy.com/')
r.status_code
r.text for i in range(1,5):
for j in range(1,5):
for k in range(1,5):
if (i!=j)and(j!=k)and(k!=i):
print(i,j,k) profit = int(input('输入发放的利润值(万元): '))
if 0 <= profit <10:
print('提成为:',profit*0.1,'万元')
if 10 <= profit < 20:
print('提成为:',(profit-10)*0.075+10*0.1,'万元')
if 20 <= profit < 40:
print('提成为:',(profit-20)*0.05+10*0.075+10*0.1,'万元')
if 40 <= profit < 60:
print('提成为:',(profit-40)*0.03+20*0.05+10*0.075+10*0.1,'万元')
if 60 <= profit < 100:
print('提成为:',(profit-60)*0.015+20*0.03+20*0.05+10*0.075+10*0.1,'万元')
if profit >= 100:
print('提成为:',(profit-100)*0.01+40*0.015+20*0.03+20*0.05+10*0.075+10*0.1,'万元') profit = int(input('输入企业的利润值(万元): '))
gap = [100,60,40,20,10,0]
ratio =[0.01,0.015,0.03,0.05,0.075,0.1]
bonus=0
for idx in range(0,6):
if profit >= gap[idx]:
bonus += (profit-gap[idx])*ratio[idx]
profit=gap[idx]
print('提成为:',bonus,'万元') profit = int(input('输入企业的利润值(万元): '))
def get_bonus(profit):
bonus = 0
if 0 <= profit <= 10:
bonus = 0.1*profit
elif (profit > 10) and (profit <= 20):
bonus = (profit-10)*0.075 + get_bonus(10)
elif (profit > 20) and (profit <= 40):
bonus = (profit-20)*0.05 + get_bonus(20)
elif (profit > 40) and (profit <= 60):
bonus = (profit-40)*0.03 + get_bonus(40)
elif (profit > 60) and (profit <= 100):
bonus = (profit-60)*0.015 + get_bonus(60)
elif (profit >100):
bonus = (profit-100)*0.01 + get_bonus(100)
else:
print("利润输入值不能为负")
return bonus if __name__ == '__main__':
print('提成为:',get_bonus(profit),'万元') '''
分析:
x + 100 = m^2
x + 100 + 168 = n^2
n^2 - m^2 = 168
(n + m) * (n - m) = 168
n > m >= 0
n - m 最小值为 1
n + m 最大为 168
n 最大值为 168
m 最大值为 167
''' def _test():
for m in range(0, 168):
for n in range(m + 1, 169):
#print('n=%s,m=%s' % (n, m))
if (n + m) * (n - m) == 168:
print("该数为:" + str(n * n - 168 - 100))
print("该数为:" + str(m * m - 100))
print('n为%s,m为%s' % (n, m))
if __name__ == '__main__':
_test() def test1():
for n in range(0,168):
for m in range(n,169):
if (m+n)*(m-n) == 168:
print("这个整数是: ",str(n*n-100))
if __name__ =='__main__':
test1() import pandas as pd
df = pd.read_csv(r'c:\Users\clemente\Desktop\all\train.csv',index_col='Id')
df.head() for i in range(0,7):
for j in range(0,7):
for k in range(0,7):
for g in range(0,7):
for h in range(0,7):
while (i!=j) and(i!=g) and(g!=h)and(h!=k)and(k!=i):
if (i+j+k+g+h)==15:
print (i,j,k,g,h) import random
def gen5num():
alldigit=[0,1,2,3,4,5,6,0]
first=random.randint(0,6) #randint包含两端,0和6
alldigit.remove(first)
second=random.choice(alldigit)
alldigit.remove(second)
third=random.choice(alldigit)
alldigit.remove(third)
forth=random.choice(alldigit)
alldigit.remove(forth)
fiveth=random.choice(alldigit)
alldigit.remove(fiveth)
if (first+second+third+forth+fiveth)==15:
return first,second,third,forth,fiveth
if __name__=='__main__':
for i in range(100):
print(gen5num()) #!/usr/bin/env python3
#coding=utf-8 from itertools import permutations
t = 0
for i in permutations('',5):
print(''.join(i))
t += 1 print("不重复的数量有:%s"%t) def sum_1():
"""
aaaddd
"""
for i in '':
p += int(i)
print(sum(p))
sum_1() np.*load*? #题目:数组中找出两个元素之和 等于给定的整数 # 思路:
# 1、将数组元素排序;
# 2、array[i]与a[j](j的取值:i+1到len_array-1) 相加;
# 3、如两两相加<整数继续,如=整数则输出元素值;
# 4、如>则直接退出,i+1 开始下一轮相加比较 def addData(array, sumdata):
"""
aaaadddd
"""
temp_array = array
temp_sumdata = sumdata
print ("sumdata: {}".format(temp_sumdata))
sorted(temp_array)
len_temp_array = len(temp_array) # 计数符合条件的组数
num = 0 for i in range(0, len_temp_array-1):
for j in range(i+1, len_temp_array):
for k in range(j+1,len_temp_array):
if temp_array[i] + temp_array[j] + temp_array[k] < temp_sumdata:
continue
elif temp_array[i] + temp_array[j] + temp_array[k] == temp_sumdata:
num += 1
print("Group {} :".format(num))
print("下标:{}, 元素值: {}".format(i, temp_array[i])) else:
break if __name__=="__main__":
test_array = [0,1,2,3,4,5,6,0]
test_sumdata = 4
addData(test_array, test_sumdata) #题目:数组中找出两个元素之和 等于给定的整数 # 思路:
# 1、将数组元素排序;
# 2、array[i]与a[j](j的取值:i+1到len_array-1) 相加;
# 3、如两两相加<整数继续,如=整数则输出元素值;
# 4、如>则直接退出,i+1 开始下一轮相加比较 import numpy as np
names=np.array(['Bob','Joe','Will','Bob','Will','Joe','Joe'])
data=np.random.randn(7,4)
names
data
names == 'Bob'
data[names=='Bob'] arr[[4,3,0,6]] import matplotlib.pyplot as plt
points = np.arange(-5,5,0.01)
xs,ys=np.meshgrid(points,points)
z=np.sqrt(xs**2+ys**2) plt.imshow(z,cmap=plt.cm.gray)
plt.colorbar()
plt.title("图像 $\sqrt{x^2+y^2}$") import pandas as pd
obj=pd.Series(range(3),index=["a","b","c"])
index=obj.index
index[1]='d'
import numpy as np
import pandas as pd
data=pd.DataFrame(np.arange(16).reshape(4,4),index=[1,2,3,4],columns=["one","two","three","forth"])
data<3 df1=pd.DataFrame({"A":[1,2]})
df1 obj=pd.Series(["a","a","b","c"]*4)
obj
obj.describe() import json
result = json.loads(obj)
result import pandas as pd
ages=[12,34,23,45,67,30,20,55,98,30,43]
bins=[1,20,30,40,50,100]
cats=pd.cut(ages,bins)
cats
cats.codes
pd.value_counts(cats) DataF=pd.DataFrame(np.arange(5*4).reshape((5,4)))
DataF
sample_1=np.random.permutation(5*4)
sample_1.reshape(5,4) df=pd.DataFrame({'key':['b','b','a','c','a','b'],'data1':range(6)})
df
df[["data1"]] import pandas as pd
left=pd.DataFrame({'key1':['foo','foo','bar'],'key2':['one','two','one'],'lval':[1,2,3]})
right=pd.DataFrame({'key1':['foo','foo','bar','bar'],'key2':['one','one','one','two'],'rval':[4,5,6,7]})
pd.merge(left,right,on=['key1']) import matplotlib.pyplot as plt
import numpy as np
data=np.arange(10000)
plt.plot(data) fig=plt.figure()
ax1=fig.add_subplot(2,2,1)
ax2=fig.add_subplot(2,2,2)
ax3=fig.add_subplot(2,2,3) ax1.hist(np.random.randn(100),bins=20,color='k',alpha=0.5)
ax2.scatter(np.arange(30),np.arange(30)+3*np.random.randn(30))
ax3.plot(np.random.randn(50).cumsum(),drawstyle='steps-post') fig=plt.figure()
ax=fig.add_subplot(1,1,1)
rect=plt.Rectangle((0.5,0.8),0.4,0.4,color='g',alpha=0.4)
ax.add_patch(rect) plt.savefig("真的.svg",bbox_inches='tight') s=pd.Series(np.random.randn(10).cumsum())
s.plot() s=pd.Series(np.random.randn(10).cumsum(),index=np.arange(0,100,10))
s.plot() df=pd.DataFrame(np.random.randn(10,4).cumsum(0),columns=['A','B','C','D'],index=np.arange(0,100,10))
df.plot() fig,axes=plt.subplots(2,1)
data=pd.Series(np.random.rand(16),index=list("abcdefghijklmnop"))
data.plot.bar(ax=axes[0],color='k',alpha=0.7)
data.plot.barh(ax=axes[1],color='g',alpha=0.7)
plt.show() df=pd.DataFrame(np.random.rand(6,4),index=['one','two','three','four','five','six'],columns=pd.Index(['A','B','C','D'],name='Genus'))
df
df.plot.bar()
df.plot.barh(stacked=True,alpha=0.5) tips=pd.read_csv('tips.csv')
party_counts = pd.crosstab(tips['day'],tips['size'])
party_counts
party_counts=party_counts.loc[:,2:5]
party_counts party_counts.sum(1) party_pcts= party_counts.div(party_counts.sum(1),axis=0)
party_pcts.plot.bar() import seaborn as sns
tips=pd.read_csv('tips.csv')
tips['tip_pct']=tips['tip']/(tips['total_bill']-tips['tip'])
tips.head()
sns.barplot(x='tip_pct',y='day',data=tips,orient='h')
sns.barplot(x='tip_pct',y='day',hue='time',data=tips,orient='h')
sns.set(style='whitegrid') tips['tip_pct'].plot.hist(bins=50)
tips['total_bill'].plot.hist(bins=50) tips['tip_pct'].plot.density()
tips['total_bill'].plot.density() comp1=np.random.normal(0,1,size=200)
comp2=np.random.normal(10,2,size=200)
values=pd.Series(np.concatenate([comp1,comp2]))
sns.distplot(values,bins=101,color='k') macro=pd.read_csv('macrodata.csv')
data=macro[['cpi','m1','tbilrate','unemp']]
trans_data=np.log(data).diff().dropna()
trans_data.head()
trans_data[-5:] sns.regplot("m1","unemp",data=trans_data)
plt.title('Changes in log {} versus log {}'.format('m1','unemp'))
sns.set(style="ticks", color_codes=True)
sns.pairplot(trans_data,diag_kind='kde',kind='reg')
sns.pairplot(trans_data,diag_kind='hist',kind='reg') sns.factorplot(x='day',y='tip_pct',row='time',hue='smoker',kind='box',data=tips[tips.tip_pct<0.5]) tips.describe() import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
df=pd.DataFrame({'key1':['a','a','b','b','a'],'key2':['one','two','one','two','one'],'data1':np.random.randn(5),'data2':np.random.randn(5)})
df group_1=df['data1'].groupby(df['key1'])
group_1.describe()
group_2=df['data1'].groupby([df['key1'],df['key2']]).mean()
group_2 states=np.array(['Ohio','California','California','Ohio','Ohio'])
years=np.array([2005,2005,2006,2005,2006])
df['data1'].groupby([states,years]).mean() dict(list(df.groupby('key1'))) try:
year=input("输入年份:")
month=input("输入月份: ")
day=input("输入日期号: ")
finally:
print("正在计算") months2days=[0,31,59,90,120,151,181,212,243,273,304,334]
# 闰年
if int(year) % 4 ==0:
for i in range(2,12,1):
months2days[i] +=1 month_index=[]
for j in range(12):
month_index.append(i+1)
dict_md=dict(zip(month_index,months2days))
whichday=dict_md[int(month)]+int(day)
print('结果是: 第{}天'.format(whichday)) def unsortedSearch(list, i, u):
found = False
pos = 0
pos2 = 0 while pos < len(list) and not found:
if int(list[pos]) < int(u) :
if int(list[pos2]) > int(i):
found = True
pos2 = pos2 + 1
pos = pos + 1
return found unsortedList = ['', '', '', '', '', '', '', '', '', '']
num1 = ''
num2 = '' isItThere = unsortedSearch(unsortedList, num1, num2) if isItThere:
print ("There is a number between those values")
else:
print ("There isn't a number between those values") def get_nums():
nums=[]
n=int(input("一共有几个整数?"))
for i in range(n):
x=int(input('请按次随机输入第{}个整数(剩余{}次输入):'.format(i+1,n-i)))
nums.append(x)
return nums
if __name__=='__main__':
list_nums=get_nums() def BubbleSort(nums): #冒泡法
print('初始整数集合为:{}'.format(nums))
for i in range(len(nums)-1):
for j in range(len(nums)-i-1):
if nums[j]>nums[j+1]:
nums[j],nums[j+1]=nums[j+1],nums[j] #调换位置,相互赋值
print("第{}次迭代排序结果:{}".format((len(nums)-j-1),nums))
return nums
if __name__=='__main__':
print('经过冒泡法排序最终得到:{}'.format(BubbleSort(list_nums))) def get_nums():
nums=[]
n=int(input("一共有几个整数?"))
for i in range(n):
x=int(input('请按次随机输入第{}个整数(剩余{}次输入):'.format(i+1,n-i)))
nums.append(x)
return nums
if __name__=='__main__':
myList=get_nums() def selectedSort(myList):
#获取list的长度
length = len(myList)
#一共进行多少轮比较
for i in range(0,length-1):
#默认设置最小值得index为当前值
smallest = i
#用当先最小index的值分别与后面的值进行比较,以便获取最小index
for j in range(i+1,length):
#如果找到比当前值小的index,则进行两值交换
if myList[j]<myList[smallest]:
tmp = myList[j]
myList[j] = myList[smallest]
myList[smallest]=tmp
#打印每一轮比较好的列表
print("Round ",i,": ",myList) #根据第一个i循环进行打印,而不是选j循环 print("选择排序法:迭代过程 ")
selectedSort(myList) def merge_sort(LIST):
start = []
end = []
while len(LIST) > 1:
a = min(LIST)
b = max(LIST)
start.append(a)
end.append(b)
LIST.remove(a)
LIST.remove(b)
if LIST:
start.append(LIST[0])
end.reverse()
return (start + end) if __name__=='__main__':
nums=[]
n=int(input('一共几位数: '))
for i in range(n):
x=int(input("请依次输入整数:"))
nums.append(x)
print(merge_sort(nums)) # =============================================================================
#10.1.2
# =============================================================================
import pandas as pd
df=pd.DataFrame({'key1':['a','a','b','b','a'],'key2':['one','two','one','two','one'],'data1':np.random.randn(5),'data2':np.random.randn(5)})
df
df.groupby(['key1','key2'])['data1'].mean() people=pd.DataFrame(np.random.randn(5,5),columns=['a','b','c','d','e'],index=['joe','steve','wes','jim','travis'])
people
mapping={'a':'red','b':'red','c':'blue','d':'blue','e':'red','f':'orange'}
by_column=people.groupby(mapping,axis=1)
by_column.mean()
map_series=pd.Series(mapping) people.groupby(len).sum() # =============================================================================
# 分组加权
# ============================================================================= import pandas as pd
df=pd.DataFrame({'目录':['a','a','a','a','b','b','b','b'],'data':np.random.randn(8),'weights':np.random.randn(8)})
df
grouped=df.groupby('目录')
get_weighpoint=lambda x: np.average(x['data'],weights=x['weights'])
grouped.apply(get_weighpoint) # =============================================================================
#
# ============================================================================= spx=pd.read_csv('stock_px_2.csv',index_col=0,parse_dates=True)
spx
spx.info() from datetime import datetime datestrs=['7/6/2011','8/6/2011']
[datetime.strptime(x,'%m/%d/%Y')for x in datestrs] dates=pd.date_range('1/1/2018',periods=1000)
dates
long_df=pd.DataFrame(np.random.randn(1000,4),index=dates,columns=['Colorado','Texas','New York','Ohio'])
long_df pd.date_range('2018-10-1',periods=30,freq='1h') # =============================================================================
#
# =============================================================================
close_px_all=pd.read_csv("stock_px_2.csv",parse_dates=True,index_col=0)
close_px=close_px_all[['AAPL','MSFT','XOM']]
close_px=close_px.resample("B").ffill()
close_px.AAPL.plot()
close_px.AAPL.rolling(250).mean().plot() import pandas as pd
import numpy as np
values=pd.Series(['apple','orange','apple','apple']*2)
values
pd.unique(values)
pd.value_counts(values) import pandas as pd
import matplotlib.pyplot as plt
from sklearn.linear_model import RANSACRegressor, LinearRegression, TheilSenRegressor
from sklearn.metrics import explained_variance_score, mean_absolute_error, mean_squared_error, median_absolute_error, r2_score
from sklearn.svm import SVR
from sklearn.linear_model import Ridge,Lasso,ElasticNet,BayesianRidge
from sklearn.ensemble import GradientBoostingRegressor
from sklearn.cross_validation import train_test_split data = pd.read_csv('../cement_data.csv')
# 查看数据记录的长度,共1030行
print(len(data))
# 查看前五行数据
data.head() import pandas
titanic=pandas.read_csv('train.csv')
titanic.head()
titanic.describe()
titanic['Age']=titanic['Age'].fillna(titanic['Age'].median())
print(titanic['Sex'].unique()) #找Sex特征里的分类字符名,只有两种可能性
titanic.loc[titanic['Sex']=='female','Sex']=1#把分类字符名转换成整数1,0形式,进行标记
titanic.loc[titanic['Sex']=='male','Sex']=0
#对embarked 登船地 进行填充(按最多标记)
print(titanic['Embarked'].unique())
titanic['Embarked']=titanic['Embarked'].fillna('S')
titanic.loc[titanic['Embarked']=='S']=0
titanic.loc[titanic['Embarked']=='C']=1
titanic.loc[titanic['Embarked']=='Q']=2 # =============================================================================
# 引进模型,线性回归
# =============================================================================
from sklearn.linear_model import LinearRegression
from sklearn.cross_validation import KFold
#cross_validation 交叉验证,进行调参,训练数据集分成三份,三份做交叉验证 predictors=['Pclass','Sex','Age','SibSp','Parch','Fare','Embarked'] #需要输入并做预测的特征列
alg=LinearRegression()
kf=KFold(titanic.shape[0],n_folds=3,random_state=1) #shape[0]一共有多少行,random_state=1 随机种子开启,n_fold=3把训练集分为三份 predictions=[]
for train,test in kf:
train_predictors=titanic[predictors].iloc[train,:] #交叉验证中,除开训练的部分
train_target=titanic['Survived'].iloc[train]#获取目标训练集
alg.fit(train_predictors,train_target) #依据模型,训练 test_predictions=alg.predict(titanic[predictors].iloc[test,:]) #测试集
predictions.append(test_predictions) import numpy as np
predictions=np.concatenate(predictions,axis=0)
# 整理输出值,按照可能性分类到0,1
predictions[predictions>=0.5]=0
predictions[predictions<0.5]=1
accuracy=sum(predictions[predictions==titanic['Survived']])/len(predictions)
print(accuracy) # =============================================================================
# 逻辑回归
# =============================================================================
from sklearn import cross_validation
from sklearn.linear_model import LogisticRegression
alg=LogisticRegression(random_state=1)
scores=cross_validation.cross_val_score(alg,titanic[predictors],titanic['Survived'],cv=3)
print(scores.mean()) # =============================================================================
# 随机森林
# =============================================================================
from sklearn import cross_validation
from sklearn.ensemble import RandomForestClassifier
predictors=['Pclass','Sex','Age','SibSp','Parch','Fare','Embarked']
alg=RandomForestClassifier(random_state=1,n_estimators=10,min_samples_split=2,min_samples_leaf=1)
kf=cross_validation.KFold(titanic.shape[0],n_folds=3,random_state=1)
scores=scores=cross_validation.cross_val_score(alg,titanic[predictors],titanic['Survived'],cv=kf)
print(scores.mean())
[Python] 练习代码的更多相关文章
- Python一行代码
1:Python一行代码画出爱心 print]+(y*-)**-(x**(y*<= ,)]),-,-)]) 2:终端路径切换到某文件夹下,键入: python -m SimpleHTTPServ ...
- python爬虫代码
原创python爬虫代码 主要用到urllib2.BeautifulSoup模块 #encoding=utf-8 import re import requests import urllib2 im ...
- Python小代码_2_格式化输出
Python小代码_2_格式化输出 name = input("name:") age = input("age:") job = input("jo ...
- Python小代码_1_九九乘法表
Python小代码_1_九九乘法表 max_num = 9 row = 1 while row <= max_num: col = 1 while col <= row: print(st ...
- Python IDLE 代码高亮主题
Python IDLE 代码高亮主题 使用方法: 打开C盘我的 C:\Documents and Settings\你的用户名.idlerc文件夹 里面会有一个 config-highlight.cf ...
- 代码块: 以冒号作为开始,用缩进来划分作用域,这个整体叫做代码块,python的代码块可以提升整体的整齐度,提高开发效率
# ### 代码块: 以冒号作为开始,用缩进来划分作用域,这个整体叫做代码块 if 5 == 5: print(1) print(2) if True: print(3) print(4) if Fa ...
- uiautomatorviewer 优化定位符生成,支持生成Java,Python自动化代码
项目介绍 二次开发 uiautomatorviewer 优化定位符生成,支持生成Java,Python自动化代码,修复自带工具画面有动态加载时截图失败问题,优化自带工具截图速度 ,实现类似录制脚本功能 ...
- Python实现代码统计工具——终极加速篇
Python实现代码统计工具--终极加速篇 声明 本文对于先前系列文章中实现的C/Python代码统计工具(CPLineCounter),通过C扩展接口重写核心算法加以优化,并与网上常见的统计工具做对 ...
- Python静态代码检查工具Flake8
简介 Flake8 是由Python官方发布的一款辅助检测Python代码是否规范的工具,相对于目前热度比较高的Pylint来说,Flake8检查规则灵活,支持集成额外插件,扩展性强.Flake8是对 ...
- 【Python】《大话设计模式》Python版代码实现
<大话设计模式>Python版代码实现 上一周把<大话设计模式>看完了,对面向对象技术有了新的理解,对于一个在C下写代码比较多.偶尔会用到一些脚本语言写脚本的人来说,很是开阔眼 ...
随机推荐
- WePY - 小程序敏捷开发实践丨掘金开发者大会
声明:内容转载他处,如有侵权,可协商下架 本主题虽然在其它地方讲了很多次,但还是有非常多新内容.因为很多东西正在做或者想要做.本次分享主要分为以下几个部分: WePY 的介绍 WePY 的用户 上面展 ...
- js 每到达5次换一行
function getYourString(s) { var res = ''; var length = s.length; for (var i = 0, j = 1; i < lengt ...
- loj#6029. 「雅礼集训 2017 Day1」市场(线段树)
题意 链接 Sol 势能分析. 除法是不能打标记的,所以只能暴力递归.这里我们加一个剪枝:如果区间内最大最小值的改变量都相同的话,就变成区间减. 这样复杂度是\((n + mlogn) logV\)的 ...
- 多线程编程CompletableFuture与parallelStream
一.简介 平常在页面中我们会使用异步调用$.ajax()函数,如果是多个的话他会并行执行相互不影响,实际上Completable我理解也是和它类似,是java 8里面新出的异步实现类,Completa ...
- Kotlin入门(25)共享参数模板
共享参数SharedPreferences是Android最简单的数据存储方式,常用于存取“Key-Value”键值对数据.在使用共享参数之前,要先调用getSharedPreferences方法声明 ...
- [转] vi/vim命令模式和编辑模式各种操作
摘要:vi 编辑器是最常用的文档创建和编辑工具,初学者应该学会简单应用vi ,学会在vi 中做简单的修改.删除.插入.搜索及替换作业:如果您是新手,不妨看看本文,或许这篇文档能让您在最短的时间内学会v ...
- Jmeter-测试计划,线程组,取样器,逻辑控制器,断言和监听器
一 测试计划: 是使用jmeter测试的起点,是其他测试元件的容器,一个完整的测试计划包括多个线程组,逻辑控制器,取样器,监听器,配置元件 用户定义的变量: 测试计划上可以添加用户定义的变量.一般添加 ...
- python Kmeans算法解析
一. 概述 首先需要先介绍一下无监督学习,所谓无监督学习,就是训练样本中的标记信息是位置的,目标是通过对无标记训练样本的学习来揭示数据的内在性质以及规律.通俗得说,就是根据数据的一些内在性质,找出其内 ...
- 深入了解IOC
老师在简书写的一篇博客 https://www.jianshu.com/p/79f8331e1f24
- Powershell测试端口状态
function Test-Port { Param([string]$ComputerName,$port = 5985,$timeout = 1000) try { $tcpclient = Ne ...