python入门基础代码_第1页
python入门基础代码_第2页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、python 入门基础代码#查找 index 函数的帮助 help(str.index) #for 循环和 break 语句 from math import sqrt for i in range(2,101): flag=1 k=int(sqrt(i)for j in range(2,k 1): if i%j=0: flag=0 break if(flag): print i #continue语句 ,满足条件跳出 continue 后面的语句 sumA=0 i=1 while i=5:sumA =i i =1 if i=3:continueprint i=%d,sum=%d%(i,sum

2、A)#循环中的 else 语句k=5for i in range(1,10):if k=3:breakelse:print i#自定义函数 /素材 1-100 间素数 from math import sqrt defisprime(x):if x=1:return False k=int(sqrt(x) for j in range(2,k 1): if x%j=0:return False return True for i in range(2,101): if isprime(i):print idef f(x,y=True): # 默认参数要放在参数列表的最后x and y both

3、 correct words or notif y:print x,and y both correctprint x,is Okf(68)f(68,False) #传递函数 def addme2me(x): return(x x) def self(f,y):print f(y)self(addme2me,2.2)#lambda 函数 my_add=lambda x,y:x y my_add(5,6)#数据获取与表示 f=open(rE:360Downloadsfirstpro.txt,w) # 新建一个文件 f.write(hello,world) #f 为对象,write 写入文件 f.

4、close()f=open(rE:360Downloadsfirstpro.txt,r) #r 代表读出 p1=f.read(5)#5 代表读出的字节数p2=f.read()print p1,p2f.closef1=open(rE:360Downloadscompanies.txt) cname=f1.readlines()for i in range(0,len(cname):cnamei=str(i 1) cnameif1.close f2=open(rE:360Downloadsscompanies.txt,w)f2.writelines(cname)f2.close()#网络数据获取i

5、mport urllibr=urllib.urlopen(http:/ 值比较 atuple=(ba,126.4) btuple=atuplebtuple is not atuple# 对象身份比较(86.40122.64) and (applebanana)#布尔运算 #序列类型运算符 week=mondy,tuesday,wednesday,thursday,firday,satuday,sundayprint week1,week-2,n,week1:4,n,week:6,n,week:-1# 序列值的序号是从 0 开始到 N-1 或者从 -1 到 Napple*3ba in (ba,t

6、he boeingcompany) #序列类型转换工厂函数list(hello,world)# 将字符串转成列表 tuple(hello,world)# 将字符串转成元组 #字符串 s1=helloabworld!s1 #三引号可以保持里面字符串的原貌 s2=rd:pythona.pys2ccode=axp,ba,cat,csco,cvxcprice=86.40,122.64,99.44,23.78,115.91 for i in range(5):print %d%8s:%8s %(i,ccodei,cpricei) #%8s指的占 8 个 字符print i get %d%! %32 #

7、两个 % 会留下一个 astr=what do youthink of this saying no pain,no gain? tempstr=astr.split()1 # 为转义字符 if tempstr.istitle(): print it is title formatelse:print it is not title format八进制数 000 代表的字符 t 代表横向制表符 print astr# 列表jscores=9,9,8.5,10,7,8,8,9,8,10ascore=9jscores.sort()jscores.pop() # 去掉最高分 jscores.pop(

8、0) # 去掉最低分jscores.append(ascore) # 合并avescore=sum(jscores)/len(jscores) printavescoreweek=monday,tuesday,wednesday,thursday,firdayweekend=saturday,sundayweek.extend(weekend)#extend 合并函数for i,j in enumerate(week):#enumerate 函数 产生从 0 开始 的序列print i 1,jnumlist=3,11,5,8,16,1 numlist.sort(reverse=True) #

9、按逆序排列 numlistfruitlist=apple,banana,pear,lemon,avocadofruitlist.sort(key=len) fruitlist # 按字符长度排序#列表解析x*2 for x in range(10)x*2 for x in range(10) if x*22,darray,earray) #where 函数def fun(x,y):return (x 1)*(y 1) arr=fromfunction(fun,(9,9) #fromfunction 函数 arr#ufunc 函数能对数组中每个元素进行操作, 包括 add 等函数import n

10、umpy as npa=np.arange(1,5) b=np.arange(2,6) np.add(a,b)np.add.accumulate(2,3,8) np.multiply.accumulate(2,3,8)#series#series 类似于一维数组的对象,由数据和索引组成 from pandasimport Series import pandas as pd aser=pd.Series(1,2.0,a)bser=pd.Series(apple,peach,lemon,index=1,2,3) bser.indexbser.values asera import numpy a

11、s np np.exp(aser)#series 数据对齐 data=axp:86,csco:122,ba:94sindex=axp,csco,aapl aser=pd.Series(data,index=sindex)aser pd.isnull(aser)#series 的 name 属性 ==volumeaser#dataframe 表结构#大致可以看成共享一个 index 的 series 的集合data=name:wangdachui,linlin,niuyun,pay:4000,5000,6000frame=pd.Data

12、Frame(data)framenameframe.payframe.ix2 # 索引所对应的数据#dataframe 对象的修改和删除framename=admin # 对 name 下的所有元素进行更改del =no#便捷数据获取#便捷网络数据 雅虎财经from matplotlib.finance import quotes_historical_yahoofrom datetime import dateimport pandas as pdtoday=date.today() start=(today.year-1,today

13、.month,today.day)quotes=quotes_historical_yahoo(AXP,start,today)df=pd.DataFrame(quotes) print df#自然语言工具包 NLTK from nltk.corpus import gutenberg importnltk print gutenberg.fileids() #数据准备from matplotlib.finance import quotes_historical_yahoo fromdatetime import date import pandas as pd today=date.tod

14、ay()start=(today.year-1,today.month,today.day)quotes=quotes_historical_yahoo(AXP,start,today)fields=date,open,close,high,low,volumequotesdf=pd.DataFrame(quotes,columns=fields) # 通过 columns数据加属性名quotesdf=pd.DataFrame(quotes,index=range(1,len(quotes)1,columns=fields) print quotesdffrom datetime import

15、 datefrom datetime import datetimey=datetime.strftime(x,%Y-%m-%d) # 将日期转换成固定格 式import pandas as pddates=pd.date_range(20141001,periods=7) # 自己创建时 间序列dates#数据显示 djidf.index djidf.columns djidf.values djidf.describe# 显示数据描述 djidf.head(5)# 显示前五行数据djidf.tail(5)#数据选择quotesdfu2013-12-02:u2013-12-06 #dataf

16、rame 可以使 用索引选择djidfcodedjidf.loc1:5, # 通过 loc 通过标签选择数据, 第一个参数是行 标签,第二个参数是列标签djidf.loc:,code,lasttrade # 前面这个:需要djidf.loc1:6,0,2 # 通过的行位置,列位置选择标签quotesdfquotesdf.index=u2014-01-01quotesdf(quotesdf.index=u2014-01-01)&(quotesdf.close =95)# 条件筛选#简单统计预处理 djidf.mean(columns=lasttrade)# 最近一次成交价的平均值 dji

17、dfdjidf.lasttrade=120.name# 最近一次成交价大于等于 120 的公司名 len(quotesdfquotesdf.closequotesdf.open) #股票涨的天 数len(quotesdf)-131status=np.sign(np.diff(quotesdf.close) #np.diff相邻两天数据的差statusnp.where(status=1.).sizedjidf.sort(columns=lasttrade)27:.name# 排序结果列出前 三甲的公司名 ,一共是 30 条记录,所以是 27 :t=quotesdf(quotesdf.index=

18、u2014-01-01)&(quotesdf.ind exlen(t) # 统计 2014 年 1 月份的股票开盘天数 #分组tempdf.groupby(month).count().month # 每个月的股票开 盘天数tempdf.groupby(month).sum().volume # 每个月的股票总成 交量g=tempdf.groupby(month) gvolume=gvolume printgvolume.sum()#合并#append 追加 纵向 p=quotesdf:2q=quotesdfu2014-01-01:u2014-01-05 p.append(q)#concat 连接pieces=tempdf:5,tempdflen(tempdf)-4: pd.concat(pieces)#两个不同逻辑结构的对象能否连接纵向piece1=quotesdf:3piece2=tempdf:3 pd.concat(piece1,piece2,ignore_index=True)#join 连接 横向pd.merge(djidf,akdf,on=code)pd.merge.(djidf,akdf,on=code).dro

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论