python連等
先建立一個資料庫。
qw@qw-Latitude-E4300:~$ mysql -u root -p
Enter password:
打開資料庫,正確輸入密碼之後,呈現下面的結果
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 373
Server version: 5.5.38-0ubuntu0.14.04.1 (Ubuntu)
Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
在這個狀態下,輸入如下命令,建立一個資料庫:
mysql> create database qiwsirtest character set utf8;
Query OK, 1 row affected (0.00 sec)
注意上面的指令,如果僅僅輸入:create database qiwsirtest,也可以,但是,我在後面增加了character set utf8,意思是所建立的資料庫qiwsirtest,編碼是utf-8的,這樣存入漢字就不是亂碼了。
看到那一行提示:Query OK, 1 row affected (0.00 sec),就說明這個資料庫已經建立好了,名字叫做:qiwsirtest
資料庫建立之後,就可以用python通過已經安裝的mysqldb來連接這個名字叫做qiwsirtest的庫了。進入到python交互模式(現在這個實驗室做實驗)。
>>> import MySQLdb
>>> conn = MySQLdb.connect(host="localhost",user="root",passwd="123123",db="qiwsirtest",port=3306,charset="utf8")
逐個解釋上述命令的含義:
host:等號的後面應該填寫mysql資料庫的地址,因為就資料庫就在本機上(也稱作本地),所以使用localhost,注意引號。如果在其它的伺服器上,這里應該填寫ip地址。一般中小型的網站,資料庫和程序都是在同一台伺服器(計算機)上,就使用localhost了。
user:登錄資料庫的用戶名,這里一般填寫"root",還是要注意引號。當然,如果是比較大型的服務,資料庫會提供不同的用戶,那時候可以更改為相應用戶。但是,不同用戶的許可權可能不同,所以,在程序中,如果要操作資料庫,還要注意所擁有的許可權。在這里用root,就放心了,什麼許可權都有啦。不過,這樣做,在大型系統中是應該避免的。
passwd:上述user賬戶對應的登錄mysql的密碼。我在上面的例子中用的密碼是"123123"。不要忘記引號。
db:就是剛剛通create命令建立的資料庫,我建立的資料庫名字是"qiwsirtest",還是要注意引號。看官如果建立的資料庫名字不是這個,就寫自己所建資料庫名字。
port:一般情況,mysql的默認埠是3306,當mysql被安裝到伺服器之後,為了能夠允許網路訪問,伺服器(計算機)要提供一個訪問埠給它。
charset:這個設置,在很多教程中都不寫,結果在真正進行數據存儲的時候,發現有亂碼。這里我將qiwsirtest這個資料庫的編碼設置為utf-8格式,這樣就允許存入漢字而無亂碼了。注意,在mysql設置中,utf-8寫成utf8,沒有中間的橫線。但是在python文件開頭和其它地方設置編碼格式的時候,要寫成utf-8。切記!
⑵ python中常用的運算符
python常見的運算符
1.算數運算符
算術運算符用於執行加減乘除、取余等基本數學運算,其中為了方便輸入用斜杠"/"表示除號。和其它編程語言中兩個整數相除結果為整數不同,Python中兩個整數相除結果為小數,如果需要獲取整除結果則需要使用兩個斜杠"//"。Python中用兩個「*」號表示求冪,例如 2**3=8,3**2=9。
①+ 名稱:加
可用於對數字,序列等數據操作 。對於數字進行求和;其他的是連接
②- 名稱 :減 只是求差
③* 名稱:乘法
可用於數字、序列等數據進行操作;數字是求積;其他類型進行連續性的操作
④/ 名稱:除法 求商
⑤% 名稱:取余 求兩個數字除法運算的余數
⑥** 名稱:冪 求a的b次冪
⑦// 名稱:地板除法 求商取整
2.關系運算符
關系運算符用於比較兩個操作數之間的大小關系,返回值為True或False。
① == 名稱:等於 ② != 不等於 ③ > 大於 ④ < 小於 ⑤ <= 小於等於 ⑥ >= 大於等於
注意:1. 一個=表示賦值,兩個==表示判斷兩個對象是否相等
2.關系運算符可以連用
3.邏輯運算符
邏輯運算符用於判斷多個條件是否滿足某一要求。與其他編程語言不同的是:Python中用 not 表示邏輯非,and 表示邏輯與, or 表示邏輯或。
① and 名稱:邏輯與 只有當and兩邊的之都為 True時,結果為True,否則結果均為False
② or 名稱:邏輯或 只有當or兩邊的之都為False時,結果為False,否則結果均為True
③not 名稱:邏輯非 結果與原來的結果相反,總是。
注意:邏輯與和了邏輯或在進行求解期間 ,總是從左到右一次執行 ,如果在某一步可以確定結果,那麼將不在執行後面的表達式。
4.賦值運算符
運算符 += -= *= /= %= **= //= &= |= ^= <<= >>=
名稱 加賦值 減賦值 乘賦值 除賦值 取余賦值 冪賦值 地板除法賦值 位與賦值 位或賦值 位異或賦值 左移賦值 右移賦值
例子 a +=b a -= b a *= b a /= b a %= b a **= b a //= b a &= b a |= b a ^= b a <<= b a >>= b
說明 a = a + b a = a - b a = a * b a = a / b a = a % b a = a ** b a = a // b a = a & b a =a | b a = a ^ b a = a << b a = a >> b
5.身份運算符
in 例子:x in y 表示y中是否含有x,如果有則返回True,沒有責則返回False
not in 例子: x not in y 表示y中是否含有,沒有返回位True,有返回False
⑶ 如何使用python 連接kafka 並獲取數據
連接 kafka 的庫有兩種類型,一種是直接連接 kafka 的,存儲 offset 的事情要自己在客戶端完成。還有一種是先連接 zookeeper 然後再通過 zookeeper 獲取 kafka 的 brokers 信息, offset 存放在 zookeeper 上面,由 zookeeper 來協調。
我現在使用 samsa 這個 highlevel 庫
Procer示例
from kazoo.client import KazooClientfrom samsa.cluster import Clusterzookeeper = KazooClient()zookeeper.start()cluster = Cluster(zookeeper)topic = cluster.topics['topicname']topic.publish('msg')
** Consumer示例 **
from kazoo.client import KazooClientfrom samsa.cluster import Clusterzookeeper = KazooClient()zookeeper.start()cluster = Cluster(zookeeper)topic = cluster.topics['topicname']consumer = topic.subscribe('groupname')for msg in consumer:
print msg
Tip
consumer 必需在 procer 向 kafka 的 topic 裡面提交數據後才能連接,否則會出錯。
在 Kafka 中一個 consumer 需要指定 groupname , groue 中保存著 offset 等信息,新開啟一個 group 會從 offset 0 的位置重新開始獲取日誌。
kafka 的配置參數中有個 partition ,默認是 1 ,這個會對數據進行分區,如果多個 consumer 想連接同個 group 就必需要增加 partition , partition 只能大於 consumer 的數量,否則多出來的 consumer 將無法獲取到數據。
⑷ python如何判斷字元串是否相等
判斷字元串是否相等,用連等號==
⑸ 如何用python 連接兩個資料庫
在 Python 語言環境下我們這樣連接資料庫。
In [1]: from mysql import connector
In [2]: cnx = connector.connect(host="172.16.192.100",port=3306,user="appuser",password="xxxxxx")
但是連接資料庫的背後發生了什麼呢?
答案
當我們通過驅動程序(mysql-connector-python,pymysql)連接 MySQL 服務端的時候,就是把連接參數傳遞給驅動程序,驅動程序再根據參數會發起到 MySQL 服務端的 TCP 連接。當 TCP 連接建立之後驅動程序與服務端之間會按特定的格式和次序交換數據包,數據包的格式和發送次序由MySQL 協議規定。MySQL 協議:https://dev.mysql.com/doc/internals/en/client-server-protocol.html整個連接的過程中 MySQL 服務端與驅動程序之間,按如下的次序發送了這些包。
MySQL 服務端向客戶端發送一個握手包,包里記錄了 MySQL-Server 的版本,默認的授權插件,密碼鹽值(auth-data)。
2. MySQL 客戶端發出 ssl 連接請求包(如果有必要的話)。
3. MySQL 客戶端發出握手包的響應包,這個包時記錄了用戶名,密碼加密後的串,客戶端屬性,等等其它信息。
4. MySQL 服務端發出響應包,這個包里記錄了登錄是否成功,如果沒有成功也會給出錯誤信息。
⑹ 用VBA有什麼辦法可以python相連接嗎
只能用vba調用python的函數,具體的事情做不了太多,畢竟是跨語言調用
⑺ notepad怎麼和python連接
1. 安裝Python
1 下載
我選擇了32位的2.7版本。
2. 安裝
安裝的時候可以修改安裝路徑到D盤,然後注意一點是可以將最後一項「配置環境變數」勾選上(默認是不選擇的),這樣就不用手動配置環境變數了。
2. 配置Notepad++
可以參考文章【1】的方法進行配置,但是注意輸入的命令是參考文章【2】的。
1. Notepad++ ->"運行"菜單->"運行"按鈕
2. 在彈出的窗口內輸入以下命令:
cmd /k python "$(FULL_CURRENT_PATH)" & ECHO. & PAUSE & EXIT
然後點擊「保存」,隨意取一個名字,比如「RunPython」,為方便,配置一下快捷鍵(比如 Ctrl + F5),點OK即可。之後運行Python文件只要按配置的快捷鍵或者在運行菜單上點「RunPython」即可。
注意不要跟已有的快捷鍵沖突。查看已有的快捷鍵,可以點擊"運行"菜單->"管理快捷鍵"按鈕 查看
3. 命令解釋【1】
cmd /k python "$(FULL_CURRENT_PATH)" & ECHO. & PAUSE & EXIT
cmd /k python: 表示打開Cmd窗口,運行/k後邊的命令,並且執行完畢後保留窗口。此處即python(因為在環境變數里已經添加了Python目錄,所以這里不用指定Python程序的目錄,就可直接找到)
$(FULL_CURRENT_PATH) :Notepad++的宏定義,表示當前文件的完整路徑。
& 用來連接多條命令
ECHO:換行
PAUSE: 表示運行結束後暫停(cmd中顯示「請按任意鍵繼續. . .」),等待一個按鍵繼續
EXIT: 表示「按任意鍵繼續. . .」後,關閉命令行窗口。
4. Notepad++宏定義的含義
可以參考Notepad++自帶的幫助文檔。
點擊「?」菜單->「幫助」按鈕(或者Shift+F1快捷鍵)->在打開的頁面中點擊右面的「Commands」,可以查看到各個宏定義的含義
FULL_CURRENT_PATH
the fully qualified path to the current document.
CURRENT_DIRECTORY
The directory the current document resides in.
FILE_NAME
The filename of the document, without the directory.
NAME_PART
The filename without the extension.
EXT_PART
The extension of the current document.
NPP_DIRECTORY
The directory that contains the notepad++.exe executable that is currently running.
CURRENT_WORD
The currently selected text in the document.
CURRENT_LINE
The current line number that is selected in the document (0 based index, the first line is 0).
CURRENT_COLUMN
The current column the cursor resides in (0 based index, the first position on the line is 0).
5 測試
創建一個測試文件,保存為DemoRun.py。
import platform;
print "Just for demo how to do python development under windows:";
print "Current python version info is %s"%(platform.python_version());
print "uname=",platform.uname();
Ctrl + F5執行,看是否能輸出結果。
⑻ python 畫點連線
我先假設你用的是python(雖然我感覺像是matlab)
import matplotlib.pyplot as plt
plt.plot(x,y,'ro',label="point")
plt.legend()
plt.show()這里legend可以顯示圖示
如果是matlab
你直接標legend=xxxx就行了
可以查一下用法
⑼ 如何使用Python連接遠程Windows伺服器
Python的特色簡單 Python是一種代表簡單主義思想的語言。閱讀一個良好的Python程序就感覺像是在讀英語一樣,盡管這個英語的要求非常嚴格!Python的這種偽代碼本質是它最大的優點之一。它使你能夠專注於解決問題而不是去搞明白語言本身。 易學 就如同你即將看到的一樣,Python極其容易上手。前面已經提到了,Python有極其簡單的語法。 免費、開源 Python是FLOSS(自由/開放源碼軟體)之一。簡單地說,你可以自由地發布這個軟體的拷貝、閱讀它的源代碼、對它做改動、把它的一部分用於新的自由軟體中。FLOSS是基於一個團體分享知識的概念。這是為什麼Python如此優秀的原因之一——它是由一群希望看到一個更加優秀的Python的人創造並經常改進著的。 高層語言 當你用Python語言編寫程序的時候,你無需考慮諸如如何管理你的程序使用的內存一類的底層細節。 可移植性 由於它的開源本質,Python已經被移植在許多平台上(經過改動使它能夠工作在不同平台上)。如果你小心地避免使用依賴於系統的特性,那麼你的所有Python程序無需修改就可以在下述任何平台上面運行。 這些平台包括Linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、BeOS、OS/390、z/OS、Palm OS、QNX、VMS、Psion、Acom RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CE甚至還有PocketPC! 解釋性 這一點需要一些解釋。 一個用編譯性語言比如C或C++寫的程序可以從源文件(即C或C++語言)轉換到一個你的計算機使用的語言(二進制代碼,即0和1)。這個過程通過編譯器和不同的標記、選項完成。當你運行你的程序的時候,連接/轉載器軟體把你的程序從硬碟復制到內存中並且運行。 而Python語言寫的程序不需要編譯成二進制代碼。你可以直接從源代碼 運行 程序。在計算機內部,Python解釋器把源代碼轉換成稱為位元組碼的中間形式,然後再把它翻譯成計算機使用的機器語言並運行。事實上,由於你不再需要擔心如何編譯程序,如何確保連接轉載正確的庫等等,所有這一切使得使用Python更加簡單。由於你只需要把你的Python程序拷貝到另外一台計算機上,它就可以工作了,這也使得你的Python程序更加易於移植。 面向對象 Python即支持面向過程的編程也支持面向對象的編程。在 面向過程 的語言中,程序是由過程或僅僅是可重用代碼的函數構建起來的。在 面向對象 的語言中,程序是由數據和功能組合而成的對象構建起來的。與其他主要的語言如C++和Java相比,Python以一種非常強大又簡單的方式實現面向對象編程。 可擴展性 如果你需要你的一段關鍵代碼運行得更快或者希望某些演算法不公開,你可以把你的部分程序用C或C++編寫,然後在你的Python程序中使用它們。 可嵌入性 你可以把Python嵌入你的C/C++程序,從而向你的程序用戶提供腳本功能。 豐富的庫 Python標准庫確實很龐大。它可以幫助你處理各種工作,包括正則表達式、文檔生成、單元測試、線程、資料庫、網頁瀏覽器、CGI、FTP、電子郵件、XML、XML-RPC、HTML、WAV文件、密碼系統、GUI(圖形用戶界面)、Tk和其他與系統有關的操作。記住,只要安裝了Python,所有這些功能都是可用的。這被稱作Python的「功能齊全」理念。 除了標准庫以外,還有許多其他高質量的庫,如wxPython、Twisted和Python圖像庫等等。
⑽ 初學Python要多久才能入門
Python學習路線。
第一階段Python基礎與Linux資料庫。這是Python的入門階段,也是幫助零基礎學員打好基礎的重要階段。你需要掌握Python基本語法規則及變數、邏輯控制、內置數據結構、文件操作、高級函數、模塊、常用標准庫模塊、函數、異常處理、MySQL使用、協程等知識點。
學習目標:掌握Python基礎語法,具備基礎的編程能力;掌握Linux基本操作命令,掌握MySQL進階內容,完成銀行自動提款機系統實戰、英漢詞典、歌詞解析器等項目。
第二階段WEB全棧。這一部分主要學習Web前端相關技術,你需要掌握HTML、CSS、JavaScript、jQuery、BootStrap、Web開發基礎、VUE、Flask Views、Flask模板、 資料庫操作、Flask配置等知識。
學習目標:掌握WEB前端技術內容,掌握WEB後端框架,熟練使用Flask、Tornado、Django,可以完成數據監控後台的項目。
第三階段數據分析+人工智慧。這部分主要是學習爬蟲相關的知識點,你需要掌握數據抓取、數據提取、數據存儲、爬蟲並發、動態網頁抓取、scrapy框架、分布式爬蟲、爬蟲攻防、數據結構、演算法等知識。
學習目標:可以掌握爬蟲、數據採集,數據機構與演算法進階和人工智慧技術。可以完成爬蟲攻防、圖片馬賽克、電影推薦系統、地震預測、人工智慧項目等階段項目。
第四階段高級進階。這是Python高級知識點,你需要學習項目開發流程、部署、高並發、性能調優、Go語言基礎、區塊鏈入門等內容。
學習目標:可以掌握自動化運維與區塊鏈開發技術,可以完成自動化運維項目、區塊鏈等項目。
按照上面的Python學習路線圖學習完後,你基本上就可以成為一名合格的Python開發工程師。當然,想要快速成為企業競聘的精英人才,你需要有好的老師指導,還要有較多的項目積累實戰經驗。
自學本身難度較高,一步一步學下來肯定全面且扎實,如果自己有針對性的想學哪一部分,可以直接跳過暫時不需要的針對性的學習自己需要的模塊,可以多看一些不同的視頻學習。系統學習一般在5-6個月。