20191228--python學習第四天

今日內容:python

  列表linux

  元組git

內容回顧與補充程序員

  1.計算機基礎github

    硬件:CPU/內存/硬盤/主板/網卡面試

    操做系統:linux(免費/開源) centos/ubuntu/redhatubuntu

           windowswindows

           maccentos

    解釋器/編譯器markdown

      補充:編譯型語言和解釋型語言
      編譯型:代碼寫完後,編譯器將其變成成另一個文件,而後交給計算機執行。
                      解釋型:寫完代碼交給解釋器,解釋器會從上到下一行行代碼執行:邊解釋邊執行。 【實時翻譯】
         簡單理解:編譯型語言:代碼在執行前,編譯結果就已是機器語言;
              解釋型語言:是代碼在執行過程當中,才翻譯成機器語言,且執行一次翻譯一次,因此執行效率低。
    軟件(即應用程序)
  2.環境安裝
    python解釋器:包括py2與py3
    開發工具:pycharm
    (1)解釋器的路徑:(以hello.py爲例)  
              # !/usr/bin/env python 
print('你好')
注意:linux系統應用:賦予文件可執行權限 執行命令爲:./hello.py
(2) 編碼
      # !/usr/bin/env python 
      # -*- coding:utf-8 -*-
       print('你好')
a. 編碼種類
acsii/unicode/utf-8 / utf-16/gbk/gb2312
b. 中文表示
utf-8: 3字節
gbk: 2字節
c. python默認解釋器編碼
py3: utf-8
py2: ascii
d. 輸入輸出
py2:
輸入:raw_input
輸出:print ""
py3:
輸入:input
輸出:print()
e. 數據類型
1. int
py2中有:int/long ; py3中有 int 。
強制轉換:int(''76"")
除法:py2(只保留整數位,若是想要正常展現,須要多加一行代碼) 和 py3(正常展現)
2. bool
True/False (其餘語言:true/false)
特殊爲False的其餘類型: 0 和 ""
3. str
獨有功能
upper/lower
replace
strip/lstrip/rstrip
isdigit:返回只有True與Flase兩個值
split / rsplit:分割
補充:
startswith / endswith:以什麼開頭或結尾,注意starswith()/endswith返回值只有True與Flase
示例以下:
# 判斷是否已al開頭 
"""
# 方式一:
flag = name.startswith('al')
print(flag)
"""
"""
# 方式二:
val = name[0:2]
if val == 'al':
print('是以al開頭')
print('不是')
"""
   format:字符格式化使用方法以下
  
name = "我叫{0},年齡:{1}".format('老男孩', 73)
          print(name)
          encode:以某種類型的編碼轉換爲unicode編碼
name = '李傑'  # 解釋器讀取到內存後,按照unicode編碼存儲:8個字節。
v1 = name.encode('utf-8')
print(v1)
v2 = name.encode('gbk')
print(v2)
         join:循環每一個元素,並在元素和元素之間加入鏈接符。
name = 'alex'  # a_l_e_x
result = "**".join(name) # 循環每一個元素,並在元素和元素之間加入鏈接符。
print(result)
公共功能
  (1)索引:獲取一個字符
  (2)切片:獲取一段字符(子序列)
  (3)步長
name = "alex"
val1=name[0:-1:2] #輸出結果爲:ae
val2=name[1:-1:2] #輸出結果爲:l
val3=name[1::2] #輸出結果是:lx
val4=name[::2] #輸出結果是:ae
val5=name[-1:0:-2] #輸出結果是:xl
print(val1)
print(val2)
print(val3)
print(val4)
print(val5)
#筆試題:請將字符串反轉。
val=name[::-1]
print(val)
    (4)  長度: 獲取字符長度。
 
  (5)for循環
# name='alex'
# for item in name:
# print(item)
# #輸出的結果爲:'a','l','e','x'四個字符
# name='alex'
# for item in name:
# print(item)
# break
# print("123")
#輸出的結果爲:a

name='alex'
for item in name:
print(item)
continue
print("123")
#輸出的結果爲:'a','l','e','x'四個字符
#練習題
#1.for循環打印「alex」的每一個元素:for>while
#for循環
name = "alex"
for i in name:
print(i)

#while循環
name = "alex"
length = len(name)
i = 0
while i < length :
print(name[i])
i += 1
#2.請打印:1-10(請注意range的特性,顧頭不顧尾)
for i in range(1,11):#[1,2,3,4,5,6,7,8,9,10,11,12,14] "12345678910"
print(i)
#3.請打印:1234568910
for i in range(1,11):
if i ==7:
pass
else:
print(i)
    注意: for while 的應用場景:有窮盡優先使用 for ,無窮盡用 while
5. 變量
6. 註釋
7. 條件語句
8. 循環語句: while + for + break + continue
9. 運算符
10. 字符串格式化
%s:表明字符串
%d:表明整型
%%:兩個%表明一個%符號
11. 其餘
markdown 筆記
git
  本地: git 軟件【經常使用命令】
     git status
       git add .
                  git commit -m '' 提交記錄 '
                  git push origin master
  遠程:碼雲 / github (程序員交友平臺)
  面試相關:
   1. 寫出你經常使用的 git 命令。
      答: 1. 在碼雲或 GitHub 等代碼託管的網站建立本身倉庫,建立完以後碼雲會給我一個倉庫地址;
     2.而後本身編寫代碼
       3.將代碼提交到遠程倉庫
      2. 大家公司是怎麼用 git 作開發的?
   答: 初始化:              
                            進入一個任意文件夾,如: D:\homework\
                                 git init
                                git config 郵箱
                                git config 姓名
                                git remote add origin 倉庫地址
         注意:至此 git 已經將 D:\homework\ 目錄管理起來,之後此文件夾有任何 變化, git 都會檢測到(使用 git status 命令能夠查看狀態)                   
                      代碼收集並提交:
                                        git status
                                       git add .
                                       git commit -m '' 記錄 "
                                       git push origin master 將本地 D:\homework\ 目錄下的內容同步到碼雲倉 庫。
                     修改代碼或刪除文件等對本地 D:\homework\ 下任何文件作操做。
                                   git status
                                   git add .
                                   git commit -m ''記錄"
                                   git push origin master 將本地D:\homework\目錄下的內容同步到碼雲倉庫。
                 【避免】若是遠程有本地沒有的代碼,必須先執行:【可能引起合併問題】
                                  git pull origin master
                                  git status
                                  git add .
                                  git commit -m '' 記錄 "
                                  git push origin master 將本地 D:\homework\ 目錄下的內容同步到碼雲倉 庫。
    12.總結
      (1)語法:變量/if/while/雲孫福(輔助)
      (2)重點:數據類型中的字符串
                 a.獨有功能
          b.共有功能
          c.for 循環
                   (3) 解決實際問題:邏輯+代碼
1.列表學習
之後想要表示多個 事物 ,可使用列表。
  列表公共功能
  (1)len     
users=[" 李邵奇 "," 奇航 ",99]
val=len(users)
print(val)#返回值3
  (2)索引
users =[ " 李邵奇 " , " 奇航 " , 99 ]
val = users [ 0 ]
print ( val )#返回值:李邵奇
  (3)切片
users =[ " 李邵奇 " , " 奇航 " , 99 ]
val = users [ 0 : 2 ] # 返回值:李邵奇, 奇航
   (4) 刪除(數字 / 布爾 / 字符串除外)、
    注意: 字符串自己不能修改或刪除【不可變類型】v1 = "alex".upper()
       列表是可變類型。
users =[ " 李邵奇 " , " 奇航 " , 99 ]
# 方式一
users . pop ( 1 )
print ( users )
# 方式二:
del users [ 1 ]
print ( users )
  (5) 修改(字符串 / 數字 / 布爾除外)即從新賦值

 

users =[ " 李邵奇 " , " 奇航 " , 99 ]

 

users [ 2 ]= 66

 

users [ 0 ]= ' 李傑 '

 

users [ 0 ][ 1 ]
  (6)步長
users =[ " 李邵奇 " , " 奇航 " , 99 ]
val = users [ 0 : 2 : 2 ] #輸出的結果位:李紹奇
練習題:
#實現一個整數加法計算器(兩個數相加):如:content=input("請輸入內容:")用戶輸入:5+9或5+9或5+9(含空白),而後進行分割轉換最終進行整數的計算獲得結果。
content = input("請輸入內容:")
strip_content = content.strip()
split_content = strip_content.split("+")
a = int(split_content[0])
b = int(split_content[1])
print(a+b)
  (7)for循環
users=['李邵奇','利奇航','張三丰','李子森']
for i in users:
print(i)
#輸出的結果爲:打印users列表中的每個元素
for ele in i:
print(ele)
#輸出的結果爲:打印i字符串中的每個字符
# 練習題:請經過for循環和數字計數器實現:users=['李邵奇','利奇航','張三丰','李子森']
# 0李邵奇
# 1利奇航
# 2張三丰
# 3李子森
#方式一
# users=['李邵奇','利奇航','張三丰','李子森']
# count=0
# for i in users:
# print(count,i)
# count +=1
#
#方法二:
users=['李邵奇','利奇航','張三丰','李子森']
users_len=len(users)#4
for index in range(0,users_len):#[0,1,2,3]
print(index,users[index])
獨有功能:
(1)append 在列表的最後邊追加元素
users=[]
users.append('alex')
print(users)
#示例二:
users=[]
for i in range(0,3):
name = input('請輸入用戶名和密碼:')
users.append(name)
print(users)#['alex,123','oldboy,888','lishaoqi,123']
#用戶和密碼校驗
username=input('請輸入要登錄用戶名:')
password=input('請輸入要登錄密碼:')
for item in users:
result = item.split(',') # 循環獲得列表,第一次爲['alex','123'],依次爲:['oldboy','888']['lishaoqi','123']
user = result[0] #獲得每個列表的第一個元素進行比較
pwd = result[1]
if user == username and pwd == password:
print('登錄成功')
break
  (2)insert:插入到指定位置,示例:insert(2,"小李")
  (3)remove:刪除具體值的元素
  (4)pop:根據下標即索引刪除元素,若是沒有指定索引,默認刪除最後一個元素
  (5)clear:清空列表
總結:
增:append/insert
刪:del/pop/remove/clear
改:從新賦值
查:切片或是索引
列表的嵌套:
users =[ "alex" , 0 , True ,[ 11 , 22 , 33 , " 老男孩 " ],[ 1 ,[ 'alex' , 'oldboy' ], 2 , 3 ]]
users [ 0 ]#alex
users [ 2 ]#True
users [ 0 ][ 2 ]#e
users [ 3 ] #[11,22,33," 老男孩 "]
users [ 3 ][ - 1 ] #" 老男孩 "
users [ 3 ][ - 1 ][ 1 ] #' '
users [ 3 ]= 666 #["alex",0,True,666,[1,['alex','oldboy'],2,3]]
2.元組(英文:tuple)
   (1)元組書寫規範
    users=(11,22,33,"老男孩")
  (2)公共功能
   a.索引(排除int與bool類型)
users=(11,22,33,"老男孩")
print(users[0]) #11
print(user[-1])#老男孩
  b.切片(排除int/bool)   
  users=(11,22,33,"老男孩")
       print(users[0:2])#11,22
  c.步長(排除int/bool)
  users=(11,22,33,"老男孩")
  print(user[0:2:2]) #11
  d.刪除(排除int/bool/字符串str/元組tuple)注意:元組與字符串都是不可變類型
  e.修改(排除int/bool/字符串str/元組tuple)
  f.for循環(排除int/bool)
  g:len(排除int/bool)
  users=(11,22,33,"老男孩")
  print(len(users))# 4
 (3)獨有功能 (無)
 (4) 特殊:元組中的元素 ( 兒子 ) 不可被修改 / 刪除。
#示例一:
v1=(11,22,33)
v1[1]=999#錯誤
v1=999 #正確
#示例二:能夠嵌套
v1=(11,22,33,(44,55,66),(11,2,(99,88,),3))
#示例三:嵌套
v2=[11,22,33,(11,22,33)]
v2[-1][1]=99#錯誤
v2[-1]=123#正確
#示例四:嵌套
v3=(11,[1,2,3],22,33)
v3[1]=666#錯誤
v3[1][2]=123 #正確
總結:
1.
解釋型語言和編譯型區別以及列舉你瞭解的語言?
2. 字符串補充功能
獨有:startswith/endswith
   format
   encode
   join
共有:
   切片
   索引
   len
   步長
   for循環
   range(0,11)# 幫助你生成一個數字列表[0,1,2,3,4,5,6,7,8,9,10]
特性:
不可變,因此字符串中的元素不能被修改或是刪除
3. git本地和遠程要同步,之後只能操做本地而後提交。4. 列表(可變的數據類型)公共:索引/切片/步長/修改/刪除 del /for/len獨有:append /insert/pop/remove /clear列表嵌套5. 元組(不可變的數據類型)公共:索引/切片/步長/for/len獨有:無元組嵌套:;v3=(11,[1,2,3],22,33)v3[1]=666 #錯誤v3[1][2]=123 #正確
相關文章
相關標籤/搜索