python基礎知識點整理(1)

目錄

    • 一、變量與數據類型
      • 1、變量
        • ① 變量的命名規則
      • 2、字符串常用的庫函數
    • 二、列表
      • 1、列表的基礎定義
      • 2、列表常用的庫函數
      • 3、for循環與列表
      • 4、列表切片
      • 5、元組
    • 三、if語句
    • 四、字典
      • 1、字典定義
      • 2、對字典的操作


一、變量與數據類型


1、變量

① 變量的命名規則

  1. 只能包含數字、字母以及下劃線。且只能以字母與下劃線開頭,不能以數字開頭。
  2. 變量名稱不能包含空格,可以以下劃線分隔單詞。
  3. 不能以python中的關鍵字和函數名作為變量名
  4. 變量名應該簡潔而又富有描述性

注:python中的變量不需要聲明定義函數類型,只需要直接寫出變量名并賦值。例:age = 23 (整型變量)、message = ‘Hellow world!’(字符串)


2、字符串常用的庫函數

  1. 變量名.tiltle() :每個單詞首字母都改為大寫。
  2. 變量名.upper() :大寫所有字母
  3. 變量名.lower():小寫所有字母
  4. 變量名.rstrip():刪除字符串中末尾的空白(暫時刪除,并沒有改變原本變量)
  5. 變量名.lstrip():刪除字符串中開頭的空白(暫時刪除,并沒有改變原本變量)
  6. 變量名.strip():刪除字符出開頭語結尾的空白(暫時刪除,并沒有改變原本變量)

二、列表


1、列表的基礎定義

  1. 什么是列表?
    由一系列按特定順序排列的元素組成集合。
  2. 列表的表示:
    用方括號([ ])來表示,并用逗號來分隔其中元素。
  3. 列表的定義與訪問方式:
    例:
#定義列表
fruits = ['apple','banana','mango','pear','cherry']
#訪問并輸出第一個元素
print(fruits[0].title())

注: a. python的列表第一個元素的索引為0,而不是1。
b. python中可以從后方訪問元素,如最后一個元素則索引指定為-1,倒數第二個元素索引表示為-2。


2、列表常用的庫函數

  1. 列表名.append(添加元素):在函數末尾添加元素。
  2. 列表名.append(添加位置 , 添加元素):在列表中插入元素。
  3. del 列表名[索引]:刪除列表元素。
  4. 列表名.pop(索引):刪除列表末尾的元素,索引位置為空則表示刪除最后一個元素。且我們通常可以用“變量名 = 列表名.pop(索引)”從而獲取要刪除的元素。
    例:
#定義列表
fruits = ['apple','banana','mango','pear','cherry']
fruit1 = fruits.pop(1)
print(fruits)
print(fruit1)

輸出結果為:
[‘apple’,‘mango’,‘pear’,‘cherry’]
banana

  1. 列表名.remove(指定元素):可以在不清楚元素位置但知道元素內容的情況下,直接刪除該元素。
  2. 列表名.sort( ):對列表中的元素按ascii從小到大永久性排序(對于中文元素,則是按照unicode排序)
    列表名.sort(recerse = True):與上述排序方式相反。
    sorted(函數名):暫時性傳遞列表元素,原列表順序并沒有受影響。
  3. 列表名.reverse( ):倒序列表中元素。
  4. len(列表名):查看列表長度。
  5. range():
    例:
#函數格式:range(最小值(可以取),最大值(取不到),遞增值)
numbers = list(range(2,20,3))
print(numbers)

運行結果:
[2,5,8,11,14,17]


3、for循環與列表

例:

#建立列表
names = ['alice','eric','david']
#for循環遍歷列表
for name in names:print("Hello everyone! My name is" + name.title() + ".\n")
print("END!")

運行結果:
Hello everyone! My name is Alice.

Hello everyone! My name is Eric

Hello everyone! My name is David.

END!

注:

  1. for循環后連續的有縮進的行都會進行循環,直到其后第一個沒有縮進的行開始不進入循環。
  2. python中不必要的縮進則會報錯,應該縮進的沒有縮進也會報錯。

4、列表切片

??創立切片則要指定需要的元素的第一個元素的索引和最后一個元素的索引加一。如果沒有第一個索引則自動從第一個元素開始,沒有最后一個索引則終止與列表末尾。
例1:

#定義列表
fruits = ['apple','banana','mango','pear','cherry']
#打印第2個元素到第4個元素
print(fruits[1:4])
#打印第1個元素到第2個元素
print(fruits[:2])
#打印第3個元素到最后一個元素
print(fruits[2:])
#打印最后三個元素
print(fruits[-3:])

注:應注意:列表名1 = 列表名2 與 列表名1 = 列表名2[ : ]的區別:
例2(1):

my_sports = ['volleyball','basketball','badminton']
frind_sports = my_sports[:]
frind_sports.append('tennis')
my_sports.append('swim')
print(my_sports)
print(frind_sports)

輸出結果:
[‘volleyball’,‘basketball’,‘badminton’,‘swim’]
[‘volleyball’,‘basketball’,‘badminton’,‘tennis’]

my_sports = ['volleyball','basketball','badminton']
frind_sports = my_sports
frind_sports.append('tennis')
my_sports.append('swim')
print(my_sports)
print(frind_sports)

輸出結果:
[‘volleyball’,‘basketball’,‘badminton’,‘tennis’,‘swim’]
[‘volleyball’,‘basketball’,‘badminton’,‘tennis’,‘swim’]

可看出:當利用切片來給列表相互賦值時買兩個列表是相互獨立的兩個列表。而利用列表名直接進行賦值,實際上得到的還是原來的那個列表,只不過兩個列表名都可以表示這個列表,相當于又建立了一個列表名關聯到原列表


5、元組

??元組看起來與列表相似,但使用圓括號而不是方括號。
??元組元素可以通過索引來進行訪問,但不能利用索引來進行修改元素內容,如果想對元組進行修改,則需要對列表進行重新賦值。
例:

fruits = ('apple','banana','mango','pear','cherry')
#錯誤修改
fruits[0] = 'durian'
#正確修改
fruits = ('durian','banana','mango','pear','cherry')

??元組元素也可以像列表一樣直接運用for循環進行遍歷


三、if語句


例1、if常規用法

a = input("請猜測我的年齡:")
a = int(a)
#if語句作為接下來語句是否執行的條件
if a == 19 :print("猜對了!")
elif a > 19print("您猜測的過大!")
elseprint("您猜的過小!")

例2、if語句在列表中的使用

fruits = ['apple','banana','mango','pear','cherry']
fruit = input()
if fruit in fruits:print("該水果本水果店有售!")
if fruit not in fruits:print("該水果本水果店不售或售罄!")

四、字典


1、字典定義

??字典由一系列鍵-值對組成,每一個鍵都與一個值相關聯。(與鍵相關的值可以是數字、字符串、列表以及另一個字典)
??鍵-值對是兩個相關聯的值。當指定鍵時,會返回與之相對應的值。鍵與值之間以冒號隔開。
例:

fruits = {'apple':'red','banana':10,'cherry':15}
print(fruit['apple'])

輸出結果
red

2、對字典的操作

  1. 對空字典進行添加
fruits = {}
fruits['apple'] = 'red'
fruits['banana'] = 'yellow'
fruits['cherry'] = 15
print(fruits)

輸出結果
{‘apple’:‘red’,‘banana’:‘yellow’,‘cherry’:15}

  1. 修改字典中的值
fruits = {'apple':'red','banana':10,'cherry':15}
fruits['apple'] = 'green'
fruits['cherry'] = fruits['cherry'] + 5
  1. 刪除鍵-值對
fruits = {'apple':'red','banana':10,'cherry':15}
del fruits['apple']
print(fruits)

輸出結果:
{‘banana’:10,‘cherry’:15}

  1. 遍歷字典中所有鍵
fruits = {'apple':'red','banana':10,'cherry':15}
#在不需要使用字典中的值時,可以使用方法keys()
for fruit in fruits.key():print(fruit.title())

輸出結果:
Apple
Banana
Cherry

  1. 遍歷字典中的值
fruits = {'apple':'red','banana':10,'cherry':15}
#在不需要使用字典中的鍵時,可以使用方法keys()
for fruit in fruits.values():print(fruit.title())
  1. 遍歷字典中的鍵-值對
fruits = {'apple':'red','banana':10,'cherry':15}
for key,value in fruits.items( ) :print("\n Key:" +key)print("Value:" + value)

輸出結果:
Key:apple
Value:red

Key:banana
Value:10

Key:cherry
Value:15

  1. 列表中嵌套字典
byd = {'prize' : '15w','clore' : 'red'}
bmw = {'prize' : '40w','clore' : 'white'}
audi = {'prize' : '35w','clore' : 'black'}cars = [byd,bmw,audi]
for car in cars:print(car)

輸出結果:
{‘prize’ : ‘15w’,‘clore’ : ‘red’}
{‘prize’ : ‘40w’,‘clore’ : ‘white’}
{‘prize’ : ‘35w’,‘clore’ : ‘black’}

  1. 字典中嵌套列表
favourite_food = {
'Eric' : ['pizza' , 'hamburger'],
'Alice' : ['noodle' , 'potato'],
'Ton' : ['steak'],
}
for name,foods in favourite_food.items():print("\n" + name + "'s favourite food are:")for food in foods :print("\t" + food.title())

輸出結果:
Eric’s favourite food are:
Pizza
Hamburger

Alice’s favourite food are:
Noodle
Potato

Ton’s favourite food are:
Steak

  1. 在字典中嵌套字典
cars ={'bmw' : {'prize' : '40w','clore' : 'red',},'audi' : {'prize' : '25w','clore' : 'black',},
}
for car,attributes in cars.items():print('Car:' + car)print("\t價格:" + attributes['prize'] + '\t顏色:' + attributes['clore'])

輸出結果:
Car:bmw
價格:40w 顏色:red
Car:audi
價格:25w 顏色:black

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/531300.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/531300.shtml
英文地址,請注明出處:http://en.pswp.cn/news/531300.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

sorl6.0+jetty+mysql搭建solr服務

1.下載solr 官網:http://lucene.apache.org/solr/ 2.目錄結構如下 3.啟動solr(默認使用jetty部署) 在path路徑下將 bin文件夾對應的目錄加入,然后輸入 solr start(或者 solr start -p port,指定端口啟動&am…

Maven中安裝本地Jar包到倉庫中或將本地jar包上傳

摘要 maven install 本地jar命令格式 mvn install:install-file -DgroupId<group_name> -DartifactId<artifact_name> -Dversion<version_no> -Dfile<path_of_the_local_jar> -Dpackagingjar -DgeneratePomtrue 示例 mvn install:install-file -Dgroup…

二維碼登錄原理及生成與解析

一、前言 這幾天在研究二維碼的掃碼登錄。初來乍到&#xff0c;還有好多東西不懂。在網上看到有人寫了一些通過QRCode或者Zxing實現二維碼的生成和解碼。一時興起&#xff0c;決定自己親手試一試。本人是通過QRCode實現的&#xff0c;下面具體的說一下。 二、二維碼原理 基礎知…

knockout+echarts實現圖表展示

一、需要學習的知識 knockout, require, director, echarts, jquery。簡單的入一下門&#xff0c;網上的資料很多&#xff0c;最直接就是進官網校習。 二、效果展示 三、require的配置 require.config.js中可以配置我們的自定義模塊的加載。 require.config({baseUrl: ".&…

Maven在Eclipse中的實用小技巧

前言 我們在開發的工程中很多都是Maven項目&#xff0c;這樣更加便于我們jar包的管理。而我們一般使用的IDE都是Eclipse&#xff0c;由于我們在日常的開發過程中會經常要用到一些Maven的操作&#xff0c;所以我今天主要跟大家分享一下我們在日常開發中的Maven實用小知識&#x…

React中使用Ant Table組件

一、Ant Design of React http://ant.design/docs/react/introduce 二、建立webpack工程 webpackreact demo下載 項目的啟動&#xff0c;參考 三、簡單配置 1.工程下載下來之后&#xff0c;在src目錄下新建目錄“table”&#xff0c;新建app.js&#xff0c;內容如下。 import R…

解決“Dynamic Web Module 3.0 requires Java 1.6 or newer.”錯誤

一、問題描述 1.錯誤截圖如下。 2.設計的問題 在Eclipse中新建了一個Maven工程, 然后更改JDK版本為1.6, 結果每次使用Maven > Update project的時候JDK版本都恢復成1.5。 二、原因分析 Maven官方文檔有如下描述&#xff1a; 編譯器插件用來編譯項目的源文件.從3.0版本開始, …

java自定義注解類

一、前言 今天閱讀帆哥代碼的時候&#xff0c;看到了之前沒有見過的新東西, 比如java自定義注解類&#xff0c;如何獲取注解&#xff0c;如何反射內部類&#xff0c;this$0是什么意思? 于是乎&#xff0c;學習并整理了一下。 二、代碼示例 import java.lang.annotation.Elemen…

解決cookie跨域訪問

一、前言 隨著項目模塊越來越多&#xff0c;很多模塊現在都是獨立部署。模塊之間的交流有時可能會通過cookie來完成。比如說門戶和應用&#xff0c;分別部署在不同的機器或者web容器中&#xff0c;假如用戶登陸之后會在瀏覽器客戶端寫入cookie&#xff08;記錄著用戶上下文信息…

React使用antd Table生成層級多選組件

一、需求 用戶對不同的應用需要有不同的權限&#xff0c;用戶一般和角色關聯在一起&#xff0c;新建角色的時候會選擇該角色對應的應用&#xff0c;然后對應用分配權限。于是寫了一種實現的方式。首先應用是一個二級樹&#xff0c;一級表示的是應用分組&#xff0c;二級表示的是…

junit4進行單元測試

一、前言 提供服務的時候&#xff0c;為了保證服務的正確性&#xff0c;有時候需要編寫測試類驗證其正確性和可用性。以前的做法都是自己簡單寫一個控制層&#xff0c;然后在控制層里調用服務并測試&#xff0c;這樣做雖然能夠達到測試的目的&#xff0c;但是太不專業了。還是老…

快速搭建springmvc+spring data jpa工程

一、前言 這里簡單講述一下如何快速使用springmvc和spring data jpa搭建后臺開發工程&#xff0c;并提供了一個簡單的demo作為參考。 二、創建maven工程 http://www.cnblogs.com/hujunzheng/p/5450255.html 三、配置文件說明 1.application.properties jdbc.drivercom.mysql.jd…

dubbo服務提供與消費

一、前言 項目中用到了Dubbo&#xff0c;臨時抱大腿&#xff0c;學習了dubbo的簡單實用方法。現在就來總結一下dubbo如何提供服務&#xff0c;如何消費服務&#xff0c;并做了一個簡單的demo作為參考。 二、Dubbo是什么 Dubbo是一個分布式服務框架&#xff0c;致力于提供高性能…

git親測命令

一、Git新建本地分支與遠程分支關聯問題 git checkout -b branch_name origin/branch_name 或者 git branch --set-upstream branch_name origin/branch_name 或者 git branch branch_name git branch --set-upstream-toorigin/branch_name branch_name 二、查看本地分支所關…

mysql 7下載安裝及問題解決

mysql 7安裝及問題解決 一、mysql下載 下載地址&#xff1a;https://www.mysql.com/downloads/Community (GPL) DownloadsMySQL Community Server (GPL)Windows (x86, 64-bit), ZIP ArchiveNo thanks, just start my download.二、mysql安裝 解壓到指定目錄在mysql bin目錄下打…

RestTemplate發送請求并攜帶header信息

1、使用restTemplate的postForObject方法 注&#xff1a;目前沒有發現發送攜帶header信息的getForObject方法。 HttpHeaders headers new HttpHeaders(); Enumeration<String> headerNames request.getHeaderNames(); while (headerNames.hasMoreElements()) {String k…

工作中常用到的命令

linux zip 和 unzip http://blog.csdn.net/shenyunsese/article/details/17556089 linux 查看日志 http://blog.chinaunix.net/uid-15463753-id-2943532.html linux 刪除 http://www.jb51.net/LINUXjishu/179430.html linux查看末尾日志&#xff08;tail -f&#xff09; http:/…

tomcat開發遠程調試端口以及利用eclipse進行遠程調試

一、tomcat開發遠程調試端口 方法1 WIN系統 在catalina.bat里&#xff1a;   SET CATALINA_OPTS-server -Xdebug -Xnoagent -Djava.compilerNONE -Xrunjdwp:transportdt_socket,servery,suspendn,address8899   Linux系統 在catalina.sh里&#xff1a;   CATALINA_OPTS&q…

webpack+react+redux+es6開發模式

一、預備知識 node, npm, react, redux, es6, webpack 二、學習資源 ECMAScript 6入門 React和Redux的連接react-redux Redux 入門教程 redux middleware 詳解 Redux研究 React 入門實例教程 webpack學習demo NPM 使用介紹 三、工程搭建 之前有寫過 webpackreactes6開發模式…

fiddler發送post請求

1.指定為 post 請求&#xff0c;輸入 url Content-Type: application/x-www-form-urlencoded;charsetutf-8 request body中的參數格式&#xff1a;userNameadminicxp&userPassword123qwe!# 這種方式可以用 request.getParameter的方式來獲得。 2.指定為 post 請求&#xff…