1. 程式人生 > >常用軟體工具(Pycharm、碼雲、Git、 正則表示式、markdown)

常用軟體工具(Pycharm、碼雲、Git、 正則表示式、markdown)

Part A. Pycharm的常用快捷鍵

參考來源

在PyCharm安裝目錄的help資料夾下可以找到ReferenceCard.pdf快捷鍵英文版說明。中文版的說明可見參考來源。

自定義的快捷鍵

ctrl+Num1:在資料夾中開啟檔案。
ctrl+Num2:顯示本地的歷史記錄。

一、程式碼編寫

1、一些常用的,不用解釋說明的快捷鍵

Ctrl + /:註釋(取消註釋)選擇的行
Shift + Enter:開始新行
TAB / Shift+TAB:縮排/取消縮排所選擇的行
Ctrl + Y:刪除當前插入符所在的行
Ctrl + D:複製當前行、或者選擇的塊
滑鼠拖拉檔案到pycharm:在pycharm中開啟
Ctrl + ← :退回當前單詞開頭
Ctrl + Shift + ← :多選到當前單詞開頭
Ctrl + →:退回當前單詞末尾
Ctrl + backspace:刪除游標位置前的單詞
Shift + F6:重新命名。包括檔案、函式。
todo : 前面加 # 在行頭,就能在執行框的TODO直接索引到該位置。

2、快速插入常用程式碼:ctrl + J

File-》Setting-》Editor-》Live Templates-》Python進入程式碼片段編輯介面進行自定義常用程式碼。 參考
比如 # encoding = utf8 語句,自定義為endong。那麼我可以用這個快捷鍵下拉選框找到它,或者我打了encode,它就能自動提示要不要轉換。

3、智慧重構:選單欄的 Refactor

重構大類裡面有:重新命名、移動檔案、移動函式等等。它能自動解決路徑、依賴問題。
實踐:需要點選到要更改的地方。

二、程式碼整理

1、一些常用的,不用解釋說明的快捷鍵

Ctrl + Shift + NumPad+/-:展開或者收縮所有的程式碼塊
Ctrl + Alt + L:程式碼格式化
Ctrl + Alt + O:優化匯入
Ctrl + Alt + I:自動穩定修復已選行的縮排
一個展示多個頁面:滑鼠放到當前導航處的檔名,然後右鍵 Split Vertically 或者 Split Horizontally 就可以啦。

2、函式呼叫層級視覺化

在大型專案中,視覺化函式呼叫關係。在 PyCharm 中,將游標定位到函式定義處,通過 Navigate->Call Hierarchy,則可以檢視該函式呼叫層級關係。
實現發現:需要對彈出的框選擇正三角、倒三角的圖示(代表:Callee 被呼叫 / Caller 呼叫)這兩種情況。

三、文件幫助、修正

Ctrl + P:引數資訊(在方法中呼叫引數)
Ctrl + Q:快速檢視文件
Ctrl + 滑鼠:檢視簡介或跳轉到變數的宣告
Alt + Enter:快速修正
F2 / Shift + F2:下一條、前一條高亮的錯誤
Ctrl + Shift + I:快速檢視變數函式等的定義
Ctrl + F12:彈出檔案結構
Alt+F7 / Ctrl+Alt+F7:在下方選單/彈出提示框顯示該函式或變數的使用情況

四、執行、除錯

Shift+F10/F9:執行/除錯 當前程式碼檔案
Alt+Shift+E:在控制檯上執行選中的程式碼
F7:進入或執行下一行
F9 / Shift + F8:退出或執行到下一輪迭代
Alt + F9:運行遊標
Alt + F8:驗證表示式或寫一些程式碼提取本輪資料
Ctrl + F8:增加/取消斷點
Ctrl + Shift + F8 檢視斷點

五、查詢、替換、書籤

Ctrl+F / Ctrl+Shift+F:普通/高階查詢
Ctrl + R / Ctrl + Shift + R 普通/高階替換
F11 / Alt + F11:新增刪除普通標籤/記憶標籤
Alt + [0-9]:傳送到特定的記憶書籤
Shift + F11:顯示所有的書籤
Ctrl+Shift+N:快速查詢檔案。非快捷鍵是Navigate -> File。

Part B. Pycharm的常用設定

或者不看下面的,直接設定字型大小就夠了。

1、各種雜的 參考來源
待看上面的參考來源。。

2、設定程式碼模板(即自動生成註釋:作者、時間、檔名等) 參考
開啟設定 File-》Setting-》Editor -》File and Code Templates-》Python Script

# encoding=utf8
"""
    Author:  'cenhongjie'
    Date:    'create date: ${YEAR}-${MONTH}-${DAY}'; 'last updated date: ${YEAR}-${MONTH}-${DAY}'
    Email:   '[email protected]'
    Describe: 

"""
from __future__ import print_function
import numpy as np
import os


3、載入大型專案時,如果一直在掃描,可以手動禁止排除掃遍哪些大型資料夾的。
參考
setting -> Project structure -> Excluded Folders

4、pycharm 無法輸入中文 參考
當然也有人說是搜狗輸入法要更新的問題。不過我用了參考的這個方法,當然也可能是重啟軟體的原因,就好了。

5、遠端伺服器參考1 參考2 參考3
(1)Tools -> Deployment -> Configuration -> Connection的Root path我實現發現最好設為 / ,Visable only for this project 不要勾,這可以讓全部專案都可以用。在Mappings 選項卡中的Web path不用管。
(2)Tools -> Deployment -> Auto upload 設定自動上傳到伺服器中。
(3)可選:在pycharm下開終端,這樣能一個介面下執行該專案。專門針對該專案的,而Terminator的是作其它雜的或統籌用途。Tools -> Start SSH Session

Part C. Pycharm與碼雲之間的操作

參考
1、pycharm上安裝碼雲外掛 參考
File->>Settings->>Plugins ->> 搜尋 gitee 並安裝 ->> 重啟 idea

2、兩者的連線
File -> Setting -> Version Control -> Gitee -> Creat API Token -> 輸入賬號密碼 -> 測試能否連線

3、上傳、下載
上傳:先add,然後commit,最後push。
【後面的待寫】

Part D. Git語法、概念

《個人需求目錄》

1、簡單的上傳下載。

2、一些簡單的檢查:
當前的提交狀態、修改的內容

3、回滾
還沒提交的各個階段的回滾、已經提交回滾到歷史版本

4、子模組的原理

5、修改倉庫名字

《學習方法》

1、先把廖雪峰的部落格看一下,然後看一下書籍。重在實踐。實踐後總結到這裡。

《Git語法》

git clone --recursive 地址:把有依賴相關的專案也拉下來。

《Git概念》

1、Patch 參考
補丁的意思。patch 作用:可以根據一個diff檔案進行版本更新,不需要完整地上傳下載檔案。

Part E. 碼雲

Part F. 正則表示式

一份極好的部落格: 地址
此外,cookbook 也有一些使用技巧。

一、一些基本要用的符號

1、加?變非貪婪模式。

例如:正則表示式"ab*“如果用於查詢"abbbc”,將找到"abbb"。而如果使用非貪婪的數量詞"ab*?",將找到"a"。

2、使用r處理反斜槓。

這樣你才能用如\w去匹配,不然你要\\w。

二、匹配

1、先要編譯 re.compile(strPattern[, flag])

strPattern是匹配模式串。flag是可選的模式。
(1)re.X(re.VERBOSE)是詳細模式。這個模式下正則表示式可以是多行,忽略空白字元。例子以下兩個等價

a = re.compile(r"""\d +  # the integral part
                   \.    # the decimal point
                   \d *  # some fractional digits""", re.X)
a = re.compile(r"\d+\.\d*")

(2)re.I(re.IGNORECASE): 忽略大小寫(括號內是完整寫法,下同,兩種呼叫都可以)。
(3)re.M(re.MULTILINE): 多行模式,改變’^‘和’$‘的行為。匹配每一行的開頭結尾。
原本:匹配字串(文段)的開頭結尾。
(4)re.S(re.DOTALL): 點任意匹配模式,改變’.‘的行為,能匹配全部字元。
原來’.'匹配除了\n換行符外的任意字元。如果使用該模式,就能全部字元都匹配。

2、match物件

呼叫match、search函式,返回的是match物件。
物件的內部函式:

group([group1, …]): 
獲得一個或多個分組截獲的字串;指定多個引數時將以元組形式返回。group1可以使用編號也可以使用別名;編號0代表被匹配的字串,沒什麼用;預設返回group(0);沒有截獲字串的組返回None;截獲了多次的組返回最後一次截獲的子串。
groups([default]): 
以元組形式返回全部分組截獲的字串。相當於呼叫group(1,2,…last)。default表示沒有匹配到字串的組以這個值替代,預設為None。
3、search與match

功能:一次的匹配。
返回:一個match物件。
區別:match只能固定位置開始,而search如果當前位置開始匹配不成功,它會找下一個下標。記住search就行。

例子1:
pattern = re.compile(r'hello')
match = pattern.match('hello world!')
if match:
    print match.group() # 輸出 hello
例子2:此例使用match()無法成功匹配 
pattern = re.compile(r'world') 
match = pattern.search('hello world!') 
if match: 
	print match.group()  # 輸出 world
4、findall

作用:多次的匹配,返回全部匹配的子串。
返回:list形式。
拓展:finditer 與本函式區別是迭代,而且它返回的是match物件。因為記憶體還是夠的所以不用學它。

p = re.compile(r'\d+')
print p.findall('one1two2three3four4') # 輸出 ['1', '2', '3', '4']

三、切分、替換(因為可以直接用python內部函式,所以下面待整理)

1、split 原字串物件的split不支援多個分隔符,所以要用正則的split

re.split(r"[0-9]",one_str)
注:使用括號匹配(即捕獲組)的split,如(0-9) 而如(?:…)就取消括號是捕獲組。捕獲組不會刪除分隔符,捕獲的內容會保留下來。

\d 可以匹配一個數字,\w 可以匹配一個字母或數字

[\u4e00-\u9fa5]是匹配一個漢字的意思。在範圍前面加個^ 意思是取反,而不是限制開頭。 + 意思是連在一起的會當做一個。

p = re.compile(ur'[^\u4e00-\u9fa5]+')#先進行編譯,然後得到的p就能在很多地方使用了。 r 是為了避免不用\\ 表示一個\。
text = p.sub(u' ', text).strip()
text = re.split(ur'!|,|。|?|;', text) # 遇到這些東西都會被捨棄而切分成一個個地小段

[]的作用 :[]內的字元可以以任意次序出現。
[]後有了+,[]內的字元可以取任意多個。於是[]內的字元可以以任意次序出現任意多次,直到遇到第一個非[]內的字元。

如[AB]+ 既可以匹配AAABBB又可以匹配BBBAAA BABAAABA等,不是一定要A…B…的次序。

2、sub或subn進行替換字串。

Part G. Markdown常用語法

(1)在表格中插入圖片
參考1 參考2
直接插入圖片到表格位置就行了。

利用github儲存圖片,在markdown引用圖片連結地址 步驟如下:
1.將markdown需要用的圖片放到git倉庫中,釋出到github上
2.訪問github倉庫,smshen/MarkdownPhotos · GitHub 
3.訪問圖片MarkdownPhotos/test.jpg at master · smshen/MarkdownPhotos · GitHub
4.點 download 按鈕,在位址列可以複製圖片地址,或者在Download按鈕上直接右鍵 "複製連結地址"
5.拷貝連結地址https://raw.githubusercontent.com/smshen/MarkdownPhotos/master/Res/test.jpg
6.在Markdown中引用圖片,![Aaron Swartz](https://raw.githubusercontent.com/smshen/MarkdownPhotos/master/Res/test.jpg)

相關推薦

常用軟體工具PycharmGit 表示式markdown

Part A. Pycharm的常用快捷鍵 參考來源 在PyCharm安裝目錄的help資料夾下可以找到ReferenceCard.pdf快捷鍵英文版說明。中文版的說明可見參考來源。 自定義的快捷鍵 ctrl+Num1:在資料夾中開啟檔案。 ctrl+Num

匹配任意字元常用表示式的書寫

 http://www.unibetter.com/deerchao/zhengzhe-biaodashi-jiaocheng-se.htm   正則教程 (注:元字元包括\ | ( ) [ ] { } ^ $ * + ? . ) 匹配中文字元的正則表示式: [\u4e00-

第四周作業aliasgrep表示式find命令的基本用法

1.命令別名 alias的用法 通過alias命令實現: (1)alias不帶任何選項將顯示當前shell下所有的可用的命令別名的資訊,其中,等號之前表示新的命令名稱,等號右邊表示的是要替代的命令及其引數。 (2)定義別名: alias new_name='old_name options' 注:通

JAVA 常用類:表示式Math類Random類System類Date類和Calendar類+程式碼

一、知識點體系圖 二、程式碼演示及注意事項 (1)正則表示式的程式碼例項 public class Test4 { public static void main(String[] args) { // 需求:獲取下面這個字串中由三個字元

jmeter之斷言資料提取器表示式jsonpathbeanshell聚合報告引數化

  ctx - ( JMeterContext ) - gives access to the context vars - ( JMeterVariables ) - gives read/write access to variables: v

文字處理grepsed表示式vim基礎

文字處理三劍客:(grep、sed)                 grep命令:Global search REgular expression and Print out t

JavaScript基礎十一表示式3D拖拽相簿

正則表示式、3D拖拽相簿 正則表示式 需求:找出一串字串中的數字 初識正則表示式 正則表示式-匹配子項 正則表示式-轉義字元 \b應用案例 \1的使用 正則表示式-字符集 正

Linux日常——shell工具之grep(包含表示式)sed

grep行過濾器 grep是⼀種查詢過濾⼯具 正則表示式在grep中⽤來查詢符合模式的字串。 egrep相當於grep -E,表⽰採⽤Extended正則表示式語法。 fgrep相當於grep - F,表⽰只搜尋固定字串⽽不搜尋正則表示式模式,不會按正則

介面測試工具-Jmeter使用筆記五:表示式提取器

(正則表示式提取器是Jmeter關聯中的一種)使用場景: 有兩個HTTP請求,請求A的返回資料中有一個欄位“ABCD”,該欄位要作為請求B的入參。 1、新增方式 請求A上右鍵-->後置處理器->正則表示式提取器 2、提取A請求中的taskCode對應的值 為了獲取到上圖中圈起來的這個值,要配置

爬蟲實戰:頁面解析詳細指南表示式XPathjsoupGson

爬蟲的第二步,是對原始碼進行解析,提煉出目標內容。 本篇我們主要介紹以下 4 種常用的解析技術: 正則表示式 XPath jsoup Gson 正則表示式 正則表示式(Regular Expression),電腦科學的一個概念。通常被用來檢索、替

JavaScript表示式表單驗證郵箱驗證函式HTML DOM

正則表示式 1.定義:它是由一個字元序列形成的搜尋模式,當在文字中搜索資料時,可以用搜索模式來描述你要查詢的內容。它可以是一個簡單的字元,或一個更復雜的模式。它可用於所有文字搜尋和文字替換操作。 2.Eg:var patt = /youngamber/i

Shell基礎表示式cutawksed命令

前言: 正則表示式是描述字元排列和匹配模式的一種語法規則。主要用於字串的模式分割、匹配、查詢及替換。(主要為了模糊匹配) 1、正則表示式與萬用字元區別 ①萬用字元(* ? [])用來匹配符合條件的檔名

Android中驗證姓名身份證銀行卡手機號表示式校驗

最近專案中遇到驗證銀行卡號的問題,就查了一下,也總結總結,後期如果發現其他資訊驗證的會補上的。  1.驗證輸入的身份證號是否正確 public static boolean isLegalId(String id) { if (id.toUpperCase

自動化運維工具之Puppet變數表示式流程控制類和模板

  前文我們瞭解了puppet的file、exec、cron、notify這四種核心資源型別的使用以及資源見定義通知/訂閱關係,回顧請參考https://www.cnblogs.com/qiuhom-1874/p/14073437.html;今天我們來了解下puppet中的變數、正則表示式、流程控制、類和模板

表示式MathSimpleDateFromatCalendar類+JAVA學習筆記-DAY14

14.01_常見物件(正則表示式的概述和簡單使用) A:正則表示式 是指一個用來描述或者匹配一系列符合某個語法規則的字串的單個字串。其實就是一種規則。有自己特殊的應用。 作用:比如註冊郵箱,郵箱有使用者名稱和密碼,一般會對其限制長度,這個限制長度

表示式MathSystemBigDecimalDateSimpleDateFormatCalendar

1、正則表示式 ● 匹配正確的數字:   匹配正整數:“\\d+”   匹配正小數:"\\d+\\.\\d+"   匹配負整數:"-\\d+"   匹配負小數:"-\\d+\\.\\d+"   匹配保留兩位小數的正數:"\\d+\\.\\d{2}"   匹配保留 1-3 位小數的正數:"\\

[Xcode10 實際操作]九實用進階-(5)使用表示式判斷格式是否正確

[Xcode10 實際操作]九、實用進階-(5)使用正則表示式判斷格式是否正確. 本文將演示使用正則表示式判斷郵箱的格式是否正確。 在專案導航區,開啟檢視控制器的程式碼檔案【ViewController.swift】 1 import UIKit 2 3 //建立一個結構體,用於實現正

C語言用regcompregexecregfree和regerror函式實現表示式校驗

  前言    首先,祝大家國慶假期玩的嗨皮!可能有的人已經在回家的路上了,是不是都看不到我的真摯祝福了?    C語言對於一些東西的封裝比較少,比如正則表示式,但速度快一直使它立於不敗之地,今天就要介紹如何用C封裝。    一、正則表示式      1、介紹     應該都聽過正則吧?主要應用在字

elasticsearch-wildcardregexp萬用字元與表示式查詢

萬用字元與正則表示式查詢 假設將郵編作為 not_analyzed 的精確值欄位索引,所以可以為其建立索引,如下: PUT /my_index { "mappings": { "address": { "properties

java:表示式Pattern和Matcher類小結

  最近在實際開發中遇到了2個坑,都和正則表示式有關。一個是public String[] split(String regex),入參居然是正則表示式!!!另一個坑與Pattern、Matcher類的操作有關。都是對java的正則表示式不夠熟悉導致。特地整理一