在學習轉換之前先了解以下它們的基本概念RDD:彈性分布式數據集,是一個只讀分區集合DataFrame:以命名列方式組織的分布式數據集,概念上和關系型數據庫的一張表一樣DataSet:分布式數據集合,Python暫時不支持了解了基本的概念之后,接下來我們通過代碼編寫三種數據集的形成RDD的形成frompyspark.sqlimportSparkSessionif__name__=='__main__':spark=SparkSession\.builder\
系統 2019-09-27 17:52:31 1955
看python社區大媽組織的內容里邊有一篇講python內存優化的,用到了__slots__。然后查了一下,總結一下。感覺非常有用python類在進行實例化的時候,會有一個__dict__屬性,里邊有可用的實例屬性名和值。聲明__slots__后,實例就只會含有__slots__里有的屬性名。#coding:utf-8classA(object):x=1def__init__(self):self.y=2a=A()printa.__dict__print(
系統 2019-09-27 17:52:11 1955
python修改大數據文件時,如果全加載到內存中,可能會導致內存溢出。因此可借用如下方法,將分件分段讀取修改。withopen('file.txt','r')asold_file:withopen('file.txt','r+')asnew_file:current_line=0#定位到需要刪除的行whilecurrent_line<(3-1):#(del_line-1)old_file.readline()current_line+=1#當前光標在被刪除
系統 2019-09-27 17:51:18 1955
使用python腳本備份zk中的配置python備份代碼python3back.pyimportosimportos.pathfromkazoo.clientimportKazooClientfromkazoo.clientimportKazooStatezk=KazooClient('test:2181')zk.start()zkBashPath="/conf/base/"backUp_path="/tmp/test/"cs=zk.get_childre
系統 2019-09-27 17:50:23 1955
一、and:在Python中,and和or執行布爾邏輯演算,如你所期待的一樣,但是它們并不返回布爾值;而是,返回它們實際進行比較的值之一。復制代碼代碼如下:>>>'a'and'b''b'>>>''and'b'''>>>'a'and'b'and'c''c'在布爾上下文中從左到右演算表達式的值,如果布爾上下文中的所有值都為真,那么and返回最后一個值。如果布爾上下文中的某個值為假,則and返回第一個假值二、or:復制代碼代碼如下:>>>'a'or'b''a'>
系統 2019-09-27 17:49:41 1955
python初學小記使用PyCharm向世界打招呼!print(“Helloworld!”)介紹自己的基本信息的方法name=input("name:")age=int(input("age:"))#integer強轉義成數字print(type(age),type(str(age)))job=input("job:")salary=input("salary:")#一.info='''-------infoof%s--------Name:%sAge:%
系統 2019-09-27 17:49:39 1955
目錄logging模塊利用配置加載logger方式一模板:logging.config.dictConfig(config_dict)logging模塊利用配置加載loggerlogging.config模塊提供了從配置加載創建logger等相關對象,并放入manager對象中進行緩存待用。所以記錄下一般幾種方式配置的范本模式,方便項目中copy直接修改使用。dictconfigreferences官檔關于logging配置字典說明方式一模板:loggin
系統 2019-09-27 17:49:12 1955
一、運算符1、算術運算符:主要用于兩個對象算數計算(加減乘除等運算)運算符:+:兩個對象相加-:得到負數或是一個數減去另一個數*:兩個數相乘或是返回一個被重復若干次的字符串/:x除以y%:返回除法的余數**:返回x的y次冪//:返回商的整數部分2、比較(關系)運算符:用于兩個對象比較(判斷是否相等、大于等運算)運算符:==:比較對象是否相等!=:比較兩個對象是否不相等<>:比較兩個對象是否不相等>:返回x是否大于y<:返回x是否小于y。所有比較運算符返回1
系統 2019-09-27 17:48:50 1955
Python下一切皆對象,每個對象都有多個屬性(attribute),Python對屬性有一套統一的管理方案。__dict__與dir()的區別:dir()是一個函數,返回的是list;__dict__是一個字典,鍵為屬性名,值為屬性值;dir()用來尋找一個對象的所有屬性,包括__dict__中的屬性,__dict__是dir()的子集;并不是所有對象都擁有__dict__屬性。許多內建類型就沒有__dict__屬性,如list,此時就需要用dir()來
系統 2019-09-27 17:48:14 1955
推薦系統中經常需要處理類似user_id,item_id,rating這樣的數據,其實就是數學里面的稀疏矩陣,scipy中提供了sparse模塊來解決這個問題,但scipy.sparse有很多問題不太合用:1、不能很好的同時支持data[i,...]、data[...,j]、data[i,j]快速切片;2、由于數據保存在內存中,不能很好的支持海量數據處理。要支持data[i,...]、data[...,j]的快速切片,需要i或者j的數據集中存儲;同時,為了
系統 2019-09-27 17:48:09 1955