Python基礎學習筆記(一)

来源:https://www.cnblogs.com/tongtongtong/archive/2018/06/07/9138259.html
-Advertisement-
Play Games

因為自己有一些編程經驗,所以在學習Python的過程中過於急功近利,導致自己現在基礎不牢,所以專門又回過頭來複習一遍Python的基礎知識點。算是對自己的學習Python的整理和總結。夯實基礎,打牢基礎,才能走的更遠。 第一部分我打算著重總結一下Python的內置的數據結構。下麵的代碼都是親測可用的 ...


       因為自己有一些編程經驗,所以在學習Python的過程中過於急功近利,導致自己現在基礎不牢,所以專門又回過頭來複習一遍Python的基礎知識點。算是對自己的學習Python的整理和總結。夯實基礎,打牢基礎,才能走的更遠。

       第一部分我打算著重總結一下Python的內置的數據結構。下麵的代碼都是親測可用的。

首先,我們在編程時不可避免地在代碼中使用到漢字,所以這裡涉及就到Python編碼的問題。為了能夠在代碼中使用漢字,在註釋時能使用漢字,一般在程式的開頭額外需要加一條語句。這條語句的作用就是告訴電腦系統,代碼是按UTF-8格式保存的。

1 # -*- coding: utf-8 -*-

1.按照慣例,先來一個Hello World的程式,這個程式恰好反映出Pyhton短小精煉的語言特點。



1 print "Hello, World!"
2 print ("Hello, World!")

 

2.字元串:字元串是指用' '或" "括起來的任意文本。也可以用''' '''這種格式表示多行內容。

word = 'word'
sentence = "這是一個句子。"
paragraph = """這是一個段落。
包含了多個語句"""

print word    
#anwser  word
print sentence  
 #anwser 這是一個句子
print paragraph 
#anwser
這是一個段落。
包含了多個語句

       如果在字元串內部既有 ' 又有 " ,則可以使用轉義字元 \ 來標識區分哪些是字元串本身的內容。

1 a='i\'m\"OK\"!'
2 print a
3 #anwser  i'm"OK"!

      Python也允許使用r' '來表示’ ‘內部的字元串預設不轉義。

1 b='\\'
2 print b  #anwser \
3 c='\\\t\\'
4 print c
5 #anwser \t表示跳到下一個製表符
6 \    \
7 #使用r' '不轉義
8 print r'\\\t\\'
9 \\\t\\

      字元串的切片操作。字元串的第一個字元的標號是從0開始。

1 str = 'Hello World!'
2 print str   # 輸出完整字元串
3 print str[0]   # 輸出字元串中的第一個字元
4 print str[2:5]   # 輸出字元串中第三個至第五個之間的字元串
5 print str[2:]   # 輸出從第三個字元開始的字元串
6 print str[3:-1]  #從右往左數第一個字元標號是-1
7 print str * 2   # 輸出字元串兩次
8 print str + "TEST" # 輸出連接的字元串

3.列表(list):列表是一個可變的有序表,可以使用列表元素的索引來訪問列表元素。第一個元素的索引仍然是0。

1 list = [ 'abcd', 786 , 2.23, 'john', 70.2 ]
2 tinylist = [123, 'john']
3 
4 print list # 輸出完整列表
5 print list[0] # 輸出列表的第一個元素
6 print list[1:3] # 輸出第二個至第三個的元素 
7 print list[2:] # 輸出從第三個開始至列表末尾的所有元素
8 print tinylist * 2 # 輸出列表兩次
9 print list + tinylist # 列印組合的列表

           列表的一些操作函數:增加元素append(),插入元素insert(),刪除元素pop()。

1 tinylist.append('abc')  #在列表末尾增加元素
2 tinylist.insert(1,99)   #在索引為1的位置插入元素
3 tinylist.pop()  #在列表末尾刪除元素  返回刪除的元素
4 tinylist.pop(1)  #在索引為1 的位置刪除元素,返回刪除的元素

          對列表元素的更改就很簡單了,直接對索引位置進行賦值。

4.元組(tuple):元組也是Python內置的一個有序集合,它和列表有些類似,但是元組在初始化後就不能修改。是不可變對象。

1 tuple = ( 'abcd', 786 , 2.23, 'john', 70.2 )
2 tinytuple = (123, 'john')
3 
4 print tuple # 輸出完整元組
5 print tuple[0] # 輸出元組的第一個元素
6 print tuple[1:3] # 輸出第二個至第三個的元素 
7 print tuple[2:] # 輸出從第三個開始至列表末尾的所有元素
8 print tinytuple * 2 # 輸出元組兩次
9 print tuple + tinytuple # 列印組合的元組

        元組由於是不可變的數據集合,所以不能修改其中的元素,但是元組元素的訪問方式和列表相同。

5.字典(dict):字典也是一種無序的數據集合,但是它使用鍵—值(key-value)進行存儲,具有很快的查找速度。

dict={}
dict['one']=1
print dict
#anwser  {'one': 1}
dict[2]='two'
print dict
#anwser {2: 'two', 'one': 1}

       把數據放入字典的方式,除了初始化的時候指定外,還可以通過鍵(key)放入。另外若是想刪除字典的數據,同樣使用pop(key)函數,鍵-值數據均會刪除。

1 tinydict[34]=66  #往字典里增加數據
2 tinydict['name']='Bob'  #也可以通過key修改字典里的數據
3 tinydict.pop('code')  #刪除鍵為‘code’的數據

       最後需要註意的是,字典的極快的查找速度是利用哈希演算法實現的,是通過key來計算value的存儲位置的,所以這就必須要求鍵(key)是不可變對象。

最後,這第一部分的Python基礎知識就總結到這吧,希望自己每天都可以進步一點點,每天都可以提升自己的能力。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 轉自:https://my.oschina.net/editorial-story/blog/1808757 本文是學習大型分散式網站架構的技術總結。對架構一個高性能、高可用、可伸縮及可擴展的分散式網站進行了概要性描述,並給出一個架構參考。文中一部分為讀書筆記,一部分是個人經驗總結,對大型分散式網站 ...
  • Java開源生鮮電商平臺-定時器,定時任務quartz的設計與架構(源碼可下載) 說明:任何業務有時候需要系統在某個定點的時刻執行某些任務,比如:凌晨2點統計昨天的報表,早上6點抽取用戶下單的佣金。 對於Java開源生鮮電商平臺而言,有定時推送客戶備貨,定時計算賣家今日的收益,定時提醒每日的提現金額 ...
  • 本文基於 jdk 1.8 。 CountDownLatch 的使用 "前面的文章" 中說到了 volatile 以及用 volatile 來實現自旋鎖,例如 java.util.concurrent.atomic 包下的工具類。但是 volatile 的使用場景畢竟有限,很多的情況下並不是適用,這個 ...
  • 譯者註:這是一篇很棒文章,使用有趣的敘述方式,從反面講解了作為一個優秀的 PHP 工程師,有哪些事情是你不能做的。請註意哦,此篇文章羅列的行為,都是你要儘量避免的。 隨著失業率越來越高,很多人意識到保全自己的工作是多麼的重要。那麼,什麼是保住自己工作,並讓自己無可替代的好方法呢?一個很簡單的事實是只 ...
  • 用 STS 創建 Maven 項目並不複雜,只是其中有一些坑在裡面,我在解決這些坑的時候發現很多人都遇到了相同的問題,因此把創建的步驟記錄在這裡。所有的步驟不外乎就是一些套路,並沒有什麼複雜的地方,只是在被套路的時候,找解決方法真是很煩人的一件事情。畢竟不是什麼大的技術問題,只是一個工具的使用,難道 ...
  • Java中的訪問控制修飾符一:Java修飾符的種類;二:訪問控制修飾符;1.預設訪問修飾符-不使用任何關鍵字;2.私有訪問修飾符-private;3.公有訪問修飾符-public;4.受保護的訪問修飾符-protected; ...
  • 本文參考《深入理解java虛擬機第二版》 一。什麼是線程安全? 這裡我借《Java Concurrency In Practice》裡面的話:當多個線程訪問一個對象,如果不考慮這些線程在運行時環境下的調度和交替執行,也不需要額外的同步,或者調用方進行任何其他的協調操作,調用這個對象的行為都可以獲得正 ...
  • 11.1.前臺用戶模型創建 (1)apps/front/models.py 首先安裝:pip install shortuuid (2)manage.py (3)生成表和添加前臺用戶 添加用戶 11.2.註冊界面完成 (1)front/views.py (2)common/images/logo.j ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...