主頁 > 作業系統 > Pyhton基礎部分:6、與用戶互動、基礎運算子

Pyhton基礎部分:6、與用戶互動、基礎運算子

2022-11-02 06:08:48 作業系統

目錄
  • 一、python資料型別
    • 1、布林值bool
    • 2、元組tuple
    • 3、集合set
  • 二、與用戶互動
    • 1、獲取用戶輸入
    • 2、輸出內部資訊
    • 3、語言環境差異
  • 三、格式化輸入
    • 1、代碼實作
    • 2、注意事項
  • 四、基本運算子
    • 1、數學運算子
    • 2、比較運算子
  • 五、常用賦值符號
    • 1、鏈式賦值
    • 2、交叉賦值
    • 3、解壓賦值
  • 六、邏輯運算子
    • 1、and 與
    • 2、or 或
    • 3、not 取反
  • 七、成員運算子
    • 1、in和not in
  • 八、身份運算子
    • 1、is和==
  • 九、練習題

一、python資料型別

1、布林值bool

? 1、用來判斷事物的對錯,是否可行
? True --->:對的,可行的,同時可用數字'1'表示
? Fales--->:錯誤的,不可行,同時可用數字'0'表示
? 2、在評估事物對錯、比較事物大小時會回傳對或錯、是否可行

? 代碼表現:

    eg1:>>>:print(3>4)
         Fales
    eg2:>>>:name_stud = ('kangkang', 'xiaoli', 'xiaozhang')
      >>>: print('kangkang'in name_stud)
         ture

3、Python中所有資料本身都帶有布林值
表示為False的值:0, None, {}, (), ''
表示為True的值 :除上述幾種,其余均為True
4、儲存布林值的變數名一般推薦使用is開頭

? 代碼表現:

    is_correct = True
    is_error = Fales

2、元組tuple

1、元組是有序且不可更改的集合,也被稱之為不可變的串列,在 Python 中,元組是用圓括號撰寫的,
2、小括號內部存放多個資料值,資料與資料之間用逗號隔開,資料可以是任何型別

? 代碼表現:

    thins_is_tuple = ('kangkang', 18 ,65.5, ['安徽', '上海'])

3、元組與串列對比

串列list 元組tuple
表現形式 中括號,內部資料值逗號隔開,資料值可以是任意型別 小括號,內部數字逗號隔開,資料值可以是任意型別
特點 可以索引取值,可修改括號內資料值 可以索引取值,不可修改內部資料值

3、元組內若只有一個資料值,則建議資料值后需要加逗號,若不加逗號則會被判定為資料值本身型別

3、集合set

1、集合是無序和無索引的集合,在 Python 中,集合用花括號撰寫,

2、大括號記憶體放多個資料值,資料值可以是任何型別

? 代碼表現:

    thins_is_set = {1, 11.1, 'kangkang', '安徽'}

3、集合與字典對比

字典dict 集合set
表現形式 大括號,內部資料值逗號隔開,資料值可以是任意型別,資料是k:v鍵值對 大括號,內部數字逗號隔開,資料值可以是任意型別,資料不是k:v鍵值對
特點 以K取值,可修V資料值 無序,無索引,括號內值不可修改,可以解壓賦值

二、與用戶互動

? 與用戶互動是指在日常生活中我們去銀行取錢,當我們坐在柜臺,收銀小姐姐問我們需要辦理什么業務時,我們告訴她我們的需求,這個程序就是在與用戶互動

1、獲取用戶輸入

? input()----->:括號內獲取用戶輸入

? 代碼表現:

    ussr_name = input('請輸入您的用戶名:')
    
     """
     1.先執行input獲取用戶輸入
     2.將輸入的資料系結給變數名username
     3.以后在程式中就可以使用變數名反復呼叫用戶資料
     """
     ps:input收到的資料會自動轉成字串

2、輸出內部資訊

? print()----->:括號內輸入內部資訊

? 代碼表現:

    print()

1、括號內可以是任意型別資料,并且可放多個資料,需逗號 隔開

    prin('康康',1, 1.2)

2.print自帶換行符
換行符:

? \r\n

? \n(斜杠與字母組合到一起可能會產生特殊的含義)

    print('康康\n', 1, 1.2)

? 3.print也可以切換結束符
? print(資料,end='默認是\n')

3、語言環境差異

1、python2與python3中兩個關鍵字的區別

python2與python3中兩個關鍵字的區別
    1、python2中
       input方法需要用戶自己提前指定資料型別 寫什么型別就是什么型別
 	   raw_input方法與python3中input一致,輸入的統一處理成字串	
    2、python2中
    	print方法有兩種使用方式
           print 資料值
           print(資料值)

三、格式化輸入

? 格式化輸入就是指在一段提前擬定好的檔案中,有一些資料暫時無法提供,這個時候就會用到格式化輸出,也就是占位符,將占位符填充至無法提供的資料處,以便在將來需要填充時能夠方便、快捷的進行區域修改

1、代碼實作

? 占位符:%s (可以填充任何資料型別)

? %d(只可以填充數字)

   info = '%s先生您好,您本月話費消費%d元,余額為%d元'
   print(info % ('康', 100, 50))

2、注意事項

1、有幾個占位符就要填幾個資料,不可多填或少填

2、占位符后填入數字來控制這段數字的位數

   info = '%s先生您好,您本月話費消費%08d元,余額為%08d元'
   %08d,%后08可以控制占位符位數

四、基本運算子

1、數學運算子

含義 常規表現方式 簡化表現方式
+ x = x + 10 x +=10
- x = x - 10 x -=10
* x = x * 10 x *=10
/ x = n / 10 x /=10
% 取余 x = n % 10 x %=10
// 整除 x = n / / 10 x //=10
** 次方 x = n ** 10 x **=10

2、比較運算子

含義 表現方式
> 大于 3 > 1
< 小于 1 < 3
>= 大于等于 x >= 3
<= 小于等于 x <= 3
== 等于 3 = 3
!= 不等于 x != 3

五、常用賦值符號

1、鏈式賦值

1、語法表現

尋常表現方式:
   number1 = 10
   number2 = 10
   number3 =10
鏈式賦值方式:
   number1 = number2 = numbe3 = 10

2、交叉賦值

1、語法表現

   a = 10
   b = 20
尋常表現方式:
   c = 10
   a = b
   b = c
交叉賦值表現方式:
   a , b = b , a

3、解壓賦值

1、語法表現

   student_nanme = ['康', '章', '張', '王']
尋常表現方式:
   class1 = student_nanme[0]
   class2 = student_nanme[1]
   class3 = student_nanme[2]
   class4 = student_nanme[3]
解壓賦值表現方式:
   class1, class2, class3, class4 = student_nanme
   '''解壓賦值在使用的時候 正常情況下需要保證左邊的變數名與右邊的資料值個數一致'''

2、多資料賦值方式

    1、在多個資料需要解壓賦值時,但我們只需要串列中的其中一部分數值時,這個時候我們可以打破上述規則使用*號來接收不需要部分的資料值
    student_nanme = ['康', '章', '張', '王']
   表現方式:(取前部分值)
    class1, class2, *class3 = student_nanme   
   表現方式:(取后部分值)
    *class1, class2, class3 = student_nanme

1、 *號會接受多余部分資料值
2、當資料值不準備需要的時候,我們可以使用下滑線作為變數名系結

六、邏輯運算子

邏輯運算子是python用來進行邏輯判斷的運算子,有and,or,not三種

1、and 與

? and運算子的功能:假設x,y為兩個運算式,x and y表示當x,y兩個運算式都為真是,運算的結果為真,and可以直觀的理解成并且的意思,

1、and兩邊都為運算式

    print(5>4 and 5>6)
  若and兩邊都通過則顯示:true(通過),反之則顯示false(錯誤), 

2、and一邊為變數名,另一邊為運算式

    a = 20
    print(a an 30>20)
  運行結果為:true
    print(a an 30<20)
   運行結果為:False

3、and兩邊都為變數名

    a = 20
    b = 30
    print(a and b)
   運行結果為:30
    print(b and a)
   運行結果為:20
 當and兩邊都為變數時,系統則判定為:ture(通過),若and右邊不為運算式,而是變數名時,系統則會回傳and右邊的資料值,反之若有一個值為假系統則回傳一個假的值(false)

2、or 或

? or運算子的功能:or連接的多個條件只要有一個成立,結果就成立,

    print(30>20 or 30<35 or 15 or 20)
  如果條件中全部由or組成,那么判斷起來非常的簡單,只要發現一個成立 結果就為通過(true), 若顯示為Ture的數不為運算式,則會顯示這個數的資料值

3、not 取反

not運算子的功能:取反,類似于說反話,

1、三者混合使用的時候有優先級之分,但是我們不需要記憶優先級,應該通過代碼的形式提前規定好優先級
eg: 先乘除有加減 但是可以使用括號來改變優先級
(3>4 and 4>3) or ((1==3 and 'x' == 'x') or 3 >3)、

2、若無括號時,()>not>and>or

七、成員運算子

? 簡單的說就是用來識別某一元素是否包含在變數中,這個變數可以是字串、串列、元組,

1、in和not in

   name_list = ['jason', 'kevin', 'oscar', 'jerry']
   print('tony' in name_list)  
 顯示結果為:False
   print('tony' not in name_list) 
 顯示結果為:True
   print('j' in name_list)
 顯示結果為:False 
    串列最小單位是資料值  不能再細分
運算子 功能
in 是否包含某元素,輸出為TRUE或FALSE
not in 是否不包含某元素,輸出為TRUE或FALSE

八、身份運算子

? 身份運算子是python用來判斷的兩個物件的存盤單元和資料值是否相同的一種運算子

1、is和==

    a1 = [11, 22, 33, 44, 55, 66, 77, 88]
    a2 = [11, 22, 33, 44, 55, 66, 77, 88] 
    print(11 is a1)    #驗證身份(資料值)結果為true
    print(a1 == a2)  #驗證地址結果為False
 1、地址相同,資料值一定相同
 2、資料值相同,地址不一定相同

九、練習題

1.獲取用戶輸入并列印成下列格式
	 ------------ info of Jason -----------
    Name : Jason
    Age  : 18
    Sex  : male
    Job  : Teacher 
    ---------------- end -----------------
 答:
Name = input('請輸入您的用戶名:')
Age = input('請輸入您的年齡:')
Sex = input('請輸入您的性別:')
Job = input('請輸入您的職業:')
a1 = (' ------------ info of %s -----------\n',
      'Name:%s\n',
      'Age:%s\n',
      'Sex:%s\n',
      'Job:%s\n',
      '---------------- end ----------------- ')
print(a1[0] % Name,
      a1[1] % Name,
      a1[2] % Age,
      a1[3] % Sex,
      a1[4] % Job,
      '---------------- end ----------------- ')


2.準備說出下列變數名v系結的結果
	 v1 = 1 or 3
   答:print(v1)---->:1
    
    v2 = 1 and 3
   答:print(v2)----->:3
    
    v3 = 0 and 2 and 1
   答:prnt(v3)---->:1
    
    v4 = 0 and 2 or 1
   答:print(v4)---->:2
    
    v5 = 0 and 2 or 1 or 4
   答:print(v5)---->:2
        
    v6 = 0 or False and 1
  答:print(v6)---->:False

轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/524850.html

標籤:Windows

上一篇:如何在MongoDB中找到物件陣列和集合之間的交集?

下一篇:我的html檔案路徑似乎不想作業,據我所知,一切都在按應有的方式完成

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • CA和證書

    1、在 CentOS7 中使用 gpg 創建 RSA 非對稱密鑰對 gpg --gen-key #Centos上生成公鑰/密鑰對(存放在家目錄.gnupg/) 2、將 CentOS7 匯出的公鑰,拷貝到 CentOS8 中,在 CentOS8 中使用 CentOS7 的公鑰加密一個檔案 gpg -a ......

    uj5u.com 2020-09-10 00:09:53 more
  • Kubernetes K8S之資源控制器Job和CronJob詳解

    Kubernetes的資源控制器Job和CronJob詳解與示例 ......

    uj5u.com 2020-09-10 00:10:45 more
  • VMware下安裝CentOS

    VMware下安裝CentOS 一、軟硬體準備 1 Centos鏡像準備 1.1 CentOS鏡像下載地址 下載地址 1.2 CentOS鏡像下載程序 點擊下載地址進入如下圖的網站,選擇需要下載的版本,這里選擇的是Centos8,點擊如圖所示。 決定選擇Centos8后,選擇想要的鏡像源進行下載,此 ......

    uj5u.com 2020-09-10 00:12:10 more
  • 如何使用Grep命令查找多個字串

    如何使用Grep 命令查找多個字串 大家好,我是良許! 今天向大家介紹一個非常有用的技巧,那就是使用 grep 命令查找多個字串。 簡單介紹一下,grep 命令可以理解為是一個功能強大的命令列工具,可以用它在一個或多個輸入檔案中搜索與正則運算式相匹配的文本,然后再將每個匹配的文本用標準輸出的格式 ......

    uj5u.com 2020-09-10 00:12:28 more
  • git配置http代理

    git配置http代理 經常遇到克隆 github 慢的問題,這里記錄一下幾種配置 git 代理的方法,解決 clone github 過慢。 目錄 git配置代理 git單獨配置github代理 git配置全域代理 配置終端環境變數 git配置代理 主要使用 git config 命令 git單獨 ......

    uj5u.com 2020-09-10 00:12:33 more
  • Linux npm install 裝包時提示Error EACCES permission denied解

    npm install 裝包時提示Error EACCES permission denied解決辦法 ......

    uj5u.com 2020-09-10 00:12:53 more
  • Centos 7下安裝nginx,使用yum install nginx,提示沒有可用的軟體包

    Centos 7下安裝nginx,使用yum install nginx,提示沒有可用的軟體包。 18 (flaskApi) [root@67 flaskDemo]# yum -y install nginx 19 已加載插件:fastestmirror, langpacks 20 Loading ......

    uj5u.com 2020-09-10 00:13:13 more
  • Linux查看服務器暴力破解ssh IP

    在公網的服務器上經常遇到別人爆破你服務器的22埠,用來挖礦或者干其他嘿嘿嘿的事情~ 這種情況下正確的做法是: 修改默認ssh的22埠 使用設定密鑰登錄或者白名單ip登錄 建議服務器密碼為復雜密碼 創建普通用戶登錄服務器(root權限過大) 建立堡壘機,實作統一管理服務器 統計爆破IP [root ......

    uj5u.com 2020-09-10 00:13:17 more
  • CentOS 7系統常見快捷鍵操作方式

    Linux系統中一些常見的快捷方式,可有效提高操作效率,在某些時刻也能避免操作失誤帶來的問題。 ......

    uj5u.com 2020-09-10 00:13:31 more
  • CentOS 7作業系統目錄結構介紹

    作業系統存在著大量的資料檔案資訊,相應檔案資訊會存在于系統相應目錄中,為了更好的管理資料資訊,會將系統進行一些目錄規劃,不同目錄存放不同的資源。 ......

    uj5u.com 2020-09-10 00:13:35 more
最新发布
  • vim的常用命令

    Vim的6種基本模式 1. 普通模式在普通模式中,用的編輯器命令,比如移動游標,洗掉文本等等。這也是Vim啟動后的默認模式。這正好和許多新用戶期待的操作方式相反(大多數編輯器默認模式為插入模式)。 2. 插入模式在這個模式中,大多數按鍵都會向文本緩沖中插入文本。大多數新用戶希望文本編輯器編輯程序中一 ......

    uj5u.com 2023-04-20 08:43:21 more
  • vim的常用命令

    Vim的6種基本模式 1. 普通模式在普通模式中,用的編輯器命令,比如移動游標,洗掉文本等等。這也是Vim啟動后的默認模式。這正好和許多新用戶期待的操作方式相反(大多數編輯器默認模式為插入模式)。 2. 插入模式在這個模式中,大多數按鍵都會向文本緩沖中插入文本。大多數新用戶希望文本編輯器編輯程序中一 ......

    uj5u.com 2023-04-20 08:42:36 more
  • docker學習

    ###Docker概述 真實專案部署環境可能非常復雜,傳統發布專案一個只需要一個jar包,運行環境需要單獨部署。而通過Docker可將jar包和相關環境(如jdk,redis,Hadoop...)等打包到docker鏡像里,將鏡像發布到Docker倉庫,部署時下載發布的鏡像,直接運行發布的鏡像即可。 ......

    uj5u.com 2023-04-19 09:26:53 more
  • 設定Windows主機的瀏覽器為wls2的默認瀏覽器

    這里以Chrome為例。 1. 準備作業 wsl是可以使用Windows主機上安裝的exe程式,出于安全考慮,默認情況下改功能是無法使用。要使用的話,終端需要以管理員權限啟動。 我這里以Windows Terminal為例,介紹如何默認使用管理員權限打開終端,具體操作如下圖所示: 2. 操作 wsl ......

    uj5u.com 2023-04-19 09:25:49 more
  • docker學習

    ###Docker概述 真實專案部署環境可能非常復雜,傳統發布專案一個只需要一個jar包,運行環境需要單獨部署。而通過Docker可將jar包和相關環境(如jdk,redis,Hadoop...)等打包到docker鏡像里,將鏡像發布到Docker倉庫,部署時下載發布的鏡像,直接運行發布的鏡像即可。 ......

    uj5u.com 2023-04-19 09:19:04 more
  • Linux學習筆記

    IP地址和主機名 IP地址 ifconfig可以用來查詢本機的IP地址,如果不能使用,可以通過install net-tools安裝。 Centos系統下ens33表示主網卡;inet后表示IP地址;lo表示本地回環網卡; 127.0.0.1表示代指本機;0.0.0.0可以用于代指本機,同時在放行設 ......

    uj5u.com 2023-04-18 06:52:01 more
  • 解決linux系統的kdump服務無法啟動的問題

    問題:專案麒麟系統服務器的kdump服務無法啟動,沒有相關日志無法定位問題。 1、查看服務狀態是關閉的,重啟系統也無法啟動 systemctl status kdump 2、修改grub引數,修改“crashkernel”為“512M(有的機器數值太大太小都會導致報錯,建議從128M開始試,或者加個 ......

    uj5u.com 2023-04-12 09:59:50 more
  • 解決linux系統的kdump服務無法啟動的問題

    問題:專案麒麟系統服務器的kdump服務無法啟動,沒有相關日志無法定位問題。 1、查看服務狀態是關閉的,重啟系統也無法啟動 systemctl status kdump 2、修改grub引數,修改“crashkernel”為“512M(有的機器數值太大太小都會導致報錯,建議從128M開始試,或者加個 ......

    uj5u.com 2023-04-12 09:59:01 more
  • 你是不是暴露了?

    作者:袁首京 原創文章,轉載時請保留此宣告,并給出原文連接。 如果您是計算機相關從業人員,那么應該經歷不止一次網路安全專項檢查了,你肯定是收到過資訊系統技術檢測報告,要求你加強風險監測,確保你提供的系統服務堅實可靠了。 沒檢測到問題還好,檢測到問題的話,有些處理起來還是挺麻煩的,尤其是線上正在運行的 ......

    uj5u.com 2023-04-05 16:52:56 more
  • 細節拉滿,80 張圖帶你一步一步推演 slab 記憶體池的設計與實作

    1. 前文回顧 在之前的幾篇記憶體管理系列文章中,筆者帶大家從宏觀角度完整地梳理了一遍 Linux 記憶體分配的整個鏈路,本文的主題依然是記憶體分配,這一次我們會從微觀的角度來探秘一下 Linux 內核中用于零散小記憶體塊分配的記憶體池 —— slab 分配器。 在本小節中,筆者還是按照以往的風格先帶大家簡單 ......

    uj5u.com 2023-04-05 16:44:11 more