python二郎成長筆記(一)(pip升級,python入門,基礎,python2和3不同格式帶來的問題,頭文件引用的格式,變量的類型,__name__ == '__main__')

二郎的操作系統是windows,之前同時安裝了python2和python3,因此在一些應用中還涉及了版本切換以及安裝插件等問題。
同時安裝是指在Anaconda中完成的,Anaconda(官方網站)就是可以便捷獲取包且對包能夠進行管理,同時對環境可以統一管理的發行版本。利用該軟件可以快速實現版本之間的切換。

首先,二郎最初安裝python是爲了運行深度學習,幫舊照片上色的,成功了……之後就一直沒用,現在是想要用python來做雙目立體視覺,所以以這個目的爲起點,那麼,開始吧

首先,爲了利用到python裏面關於雙目立體視覺的庫,二郎需要安裝插件
調出命令提示行

cmd

安裝插件

pip install StereoVision

當然,二郎好久沒用這個了,因此提醒我升級
在這裏插入圖片描述
用提醒的代碼升級就可以了,有時候一次可能無法完成會出現很多紅色字體,那麼退出再來一遍就可以了。

pip install SomePackage 安裝
pip install --upgrade SomePackage 安裝升級
pip show --files SomePackage 展示插件是否被安裝
pip uninstall SomePackage 卸載插件
pip list  列出所有插件
pip list --outdated 列出過時插件

這裏是總體文件中的內容,要想到指定文件夾去運行指定程序

cd E:\QQ\FILIVE

在cmd中cd空格後面加地址即可

下面就是python文件的讀寫了,首先先安利幾個文章,建議有疑問的先閱讀一下
python裏面的編程格式:https://www.imooc.com/article/38582;
定義新函數的方法:http://www.cnblogs.com/koala-king/p/10344055.html;
頭文件引用的格式:https://www.cnblogs.com/taurusfy/p/7605787.html;
縮進要求:https://blog.csdn.net/w3071206219/article/details/83691598;
符號以及數據類型:https://www.cnblogs.com/xiaocen/p/4292094.html;
python2和3不同格式帶來的問題:https://blog.csdn.net/dietime1943/article/details/79281386;

命令慣例
1、以單一下劃線開頭變量名(x)不會被from module import *語句導入
2、前後有下劃線的變量名(x)是系統定義的變量名,對python解釋器有特殊的意義
3、以兩個下劃線開頭但結尾沒有下劃線的變量名(__x)是類的本地變量
4、交互式模式下,變量名"
"用於保存最後表達式的結果

整個程序的框圖爲
在這裏插入圖片描述
關於入口問題,c++之類的語言均需要從main函數開始執行,而Python屬於腳本語言,不像編譯型語言那樣先將程序編譯成二進制再運行,而是動態的逐行解釋運行。也就是從腳本第一行開始運行,沒有統一的入口。

這裏說一下

from   const  import   w     #把const.py中的變量導入我們的程序
import const   #把模塊const.py加載進我們的程序,相當於直接把程序附近進入我們的程序,第一次加載只運行一次
Import const as ct  #把模塊的名字縮寫爲ct

實例
const.py

cox
	xw

引用

import const
print(const.cox.xw())

from const import cox
print(cox.xw())

import const as ct
print(ct.cox.xw())

這裏也可以看出,在哪個模塊中的函數或者變量,可以Name.XXX表示

定義變量的類型
在這裏插入圖片描述
1.位置參數:在特定位置傳遞特定的值

def const (x,y)
	c = x+y
	return c

2.默認參數:該參數需要放在位置參數後,爲參數定義默認值

def const (x,y=3)   #y爲默認參數
    	c = x+y
    	return c

3.可變參數:該參數的個數可變,其包含位置參數或者默認參數(定義時這樣,使用時可直接加入參數),其實就是將位置參數打包

 def const (*c) ……


#使用const(x,y)

4.關鍵字參數:字面理解關鍵字,其實就是將默認參數打包

def person(name,age,**ww):
print('name:',name,'age:',age,'other:',ww)
person('Tom','50')
person('Tom','50',city='Hangzhou')
person('Tom','50',gender='M',job='Teacher')

輸出

name: Tom age: 50 other: {}
name: Tom age: 50 other: {'city': 'Shanghai'}
name: Tom age: 50 other: {'gender': 'M', 'job': 'Teacher'}

if name == ‘main’ 這一句是爲了避免由於import加載時,模塊需要執行一次而出現我們不需要的信息,其中__name__ 的值代表了結構,如果當前目錄下直接運行模塊,name == ‘main’ ;如果是引用import c,那麼c中的__name__==‘c’。
下面例子來於:http://blog.konghy.cn/2017/04/24/python-entry-program/
1.不加

from const import PI

def calc_round_area(radius):
    return PI * (radius ** 2)

def main():
    print "round area: ", calc_round_area(2)

main()

輸出

PI: 3.14
round area:  12.56

2.加上

PI = 3.14

def main():
    print "PI:", PI

if __name__ == "__main__":
    main()

輸出

round area:  12.56
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章