日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

pycharm 类型注释_学习Python第一步,变量与数据类型

發布時間:2023/12/15 python 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 pycharm 类型注释_学习Python第一步,变量与数据类型 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Python是一門易學的面向對象的程序設計語言,可以輕易地完成界面、文件、封裝等高階需求,可移植性好,有非常多功能強大的庫與包,如Numpy(數值計算)、SciPy(數學、科學與工程計算)、Matplotlib(數據繪圖工具)等等,強大的Python除了可以實現應用程序開發、數據可視化、網站開發以外,近年來機器學習人工智能大火,Python作為首選開發語言更是成為了編程語言中的香餑餑,我們還要什么理由不學習一下呢,好啦~

從今天開始,我們來學習Python的基礎知識:

本節知識框架:

本節框架.png

一、程序的結構

Python程序的結構.png
1. 程序的入口main函數

定義了一個個函數后,怎么調用這些函數呢?使用main函數調用它

#?程序的入口:main函數
if?__name__?==?"__main__":
????function()#?要調用的函數

為了讓程序具有更強的可讀性,需要為程序設置一個入口,這個入口就是main函數。
print()函數,中間可以使用逗號隔開;

print("兩數之和是:",add(1,2))
2. 注釋

(1) Python里單引號與雙引號所具有的功能是一樣的,多行注釋通常使用三對單引號或者三對雙引號;
(2)對與某一句代碼的注釋通常寫在代碼的上一行使用#進行注釋;
(3)像下面這種注釋比較規范

#?!/usr/share/pythonprj/
#?-*-?coding:UTF-8?-*-

'''
模塊介紹:實現加減乘除運算
~~~~~~~~~~~~~~~~~~~~~
兩數相加:add(num01,num02)
兩束相減:sub(num01,num02)
兩數相乘:mul(num01,num02)
兩數相除:del(num01,num02)
'''

def?add(num01,num02):
????#?返回兩數之和
????return?num01?+?num02

def?sub(num01,num02):
????#?返回兩數之差
????return?num01-num02

def?mul(num01,num02):
????#?返回兩數之乘
????return??num01*num02

def?div(num01,num02):
????#?返回兩數之商
????return?num01/num02
3. print打印

(1)print("helloworld")其實系統默認隱藏了一個參數end,完整的print()語句是print("helloworld",end="\n"),所以print語句打印會自動換行,如果想讓其不換行打印,我們把end參數的\n去掉即可。
(2)print(a,b)實際含義是不換行分別打印print(a)和print(b)
(3)一次性打印多個值

print("tom","jerry","alice","tom")

打印的結果是

tom?jerry?alice?tom

打印的內容直接默認是用空格連接,如果我們想打印的內容之間使用其它連接符連接可以使用分割符sep參數,如果使用==連接,就可以這樣寫:

print("tom","jerry","alice","tom",sep="==")

這樣打印的結果就是

tom==jerry==alice==tom

這樣就可以在所有的元素之間加上你想要的分隔符

(4)把打印的內容輸出到文件

str01?=?"本次消費的金額為100元"
f?=?open("/Users/yushengtan/desktop/sales.txt",'w')
print(str01,file?=?f)

這樣就能把打印的內容輸出到文件中。

4. Input輸入

所有輸入的字符,都會被系統當做字符串
題目:輸入兩個數,求兩個數之和:

#?方法一
num01?=?input("請輸入第一個數:")
num02?=?input("請輸入第二個數:")
print("兩個數之和等于:{:d}".format(int(num01)+int(num02)))
#?方法二
num01,num02?=?eval(input("請輸入兩個數,以逗號分割:"))
print("%d?+?%d?=?%d"?%?(num01,num02,num01+num02))

這里的eval函數的特點:
a. 只能一次輸入多個整數,不能是字符串
b. 輸入后自動轉化為int類型

開發工具推薦:

如果小伙伴們需要Python基礎開發工具pycharm,可以參考我的這篇文章,教你如何安裝專業版pycharm

PyCharm學習Python的利器

二、變量

1. 什么是變量

變量是一個什么都能裝的容器,只要是數據都能存;
不需要事先聲明變量類型

2. 使用變量

(1)變量名由字母、數字、下劃線、組成,不能以數字開頭
(2)區分大小寫
(3)變量名中不能包含空格
(4)不能使用Python中的關鍵字
(5)變量命名使用小寫字母,見名知意,多個單詞用下劃線連接;
(6)一次定義多個變量,可以寫成一行a=1;a=2;a=3或者a,b,c = 1,2,3

3. 變量如何存儲數據

變量是為了方便取出存儲在內存中的數據,對于數值類型,相同的值只存儲一份。

三、 數據類型

1. 數據類型的種類

(1)Python3里整形只有int型,無論多大的數值都可以存;
(2)浮點型float精度只有17位,超過17位自動轉化為科學計數法進行表示
(3)布爾類型,True和False
(4)字符串型,可以直接通過取字符串中的數值。

str01?=?"xiaoyu"
print(str01[0])??#打印的結果就是`x`
print(str01[1:3])??#打印的結果就是`ia`
print(str01[-1])??#打印的結果就是`u`
2. 數據類型轉換

方法:要轉換的類型(數據)
要把字符類型x轉換為整數類型 int(x)
把x轉化為字符串:str(x)
把整數x轉化為字符:chr(x)
把一個字符串轉化為它的整數值:ord(x)
將一個整數轉化為十六進制字符串:hex(x)
將一個整數轉化為八進制字符串:oct(x)
將一個整數轉化為二進制字符串:bin(x)

3. 如何獲取變量的數據類型?如何判斷變量是不是屬于一個數據類型?

可以通過type(變量名)就可以知道變量的數據類型;
可以使用isinstance方法,isinstance(變量名,(數據類型))

if?isinstance(str01,(str)):
????print("字符型")
4. 數值類型

(1)如何查看變量占用多少內存空間?
要導入模塊sys,調用方法sys.getsizeof(變量名)

num01?=?1000
print("num01占用的空間:",sys.getsizeof(num01))

(2)八進制0o開頭,十六進制0x開頭
(3)整形數值常見方法:

  • abs() 絕對值

  • math.fabs() ?絕對值

  • math.sqrt() ?平方根

  • math.pow(a,b) ?a的b次方

  • max() ?返回最大值

  • min() ?返回最小值

(4)獲取整數位,保留指定位數有效數字
使用round方法:

print(round(12.3456))??#輸出結果只會打印12
print(round(12.3456,2))??#輸出結果為12.35

使用math.ceil()方法,返回數字的上入;
使用math.floor()方法,返回數字的下舍;
使用modf()方法,返回兩個數值,前一個數是小數部分、后一個個數是整數部分;

print(math.modf(12.22))??#返回(0.22,12.0)
5.字符串類型

(1)表示方法
字符串數據類型使用單引號雙引號都可以;

str01?=?'xiaoyu'
str02?=?"hello"

(2)長字符串的表示方法
使用續航符\

str03?=?"hello?nice?to?meet?you"\
"my?name?is?xiaoyu"

使用三個雙引號或者三個單引號:

str04?=?"""?hello?nice?to?meet?you
my?name?is?xiaoyu
"""

使用三個單引號或者雙引號可以保留原長字符串的長文本排版格式。
(3)轉義字符和取消轉義
打印字符串的時候使用斜杠加字母表示一個特殊的功能,\t表示橫向制表符,\n表示回車換行,\"可以打印雙引號,\\可以打印\

對于某些特殊的符號,使用取消專業字符來表示特符號本身,將其打印出來,在要打印的字符串引號前加一個字符r表示要打印的字符串不具備轉義的功能

print("\\")??#?打印出來的結果只有一個?\
print(r"\\")??#這樣就可以原封不動打印出來?\\

(4)字符串運算符+
符號+能讓兩個字符串連在一起;

print("my?name?is?"+"xiaoyu")

符號*能讓字符串按照指定次數打印;

print("hello?"*10)??#?這樣就可以打印十個hello

(5)索引的方式

str01?=?"abcdefghijklmnopq"
print(str01[0])??#打印第一個字符
print(str01[-1])??#打印最后一個字符
print(str01[5])??#打印第四個字符
print(str01[-5])??#打印倒數第五個字符
print(str01[3:10])??#打印第四到第十個字符

求字符串的長度可以用len()
(6)是否包含

str01?=?"abc"
str02?=?"abcdefg"
print("是否包含:",str01?in?str02)
print("是否不包含:",str01?not?in?str02)

(7)判斷是否相等

print(str01?==?str02)??#判斷字符串是否相等
print(str01?is?str02)??#判斷字符串是否是同一個對象

四、 格式化輸入輸出

1. 百分號形式格式化輸出

(1)整數格式化輸出占位符

  • %d 十進制輸出

  • %o 八進制輸出

  • %x 十六進制輸出

注意:數值源與輸出內容之間沒有逗號分隔,這里容易與C語言或者Java混淆
讓十進制數100,以八進制輸出:

num01?=?100
print("十進制100的八進制數值為%o"%num01)

如果一次輸出多個進制轉化:

num01,num02?=?100,200
print("八進制輸出為:0o%o,0o%o"%(num01,num02))
print("十六進制輸出為:0x%x,0x%x"%(num01,num02))

如果讓一個數二進制形式輸出,可以直接使用bin()方法;

(2)浮點數格式化輸出

  • 保留小數點后面六位有效數字%f

  • 保留小數點后面2位有效數字%.2f

  • 小數點后保留6位有效數字的科學計數法計數%e

  • 小數點后保留2位有效數字的科學計數法計數%.2e

  • 6位數能表示就用6位數,6位數表示不了就用科學計數法%g

  • 保留2位有效數字,2位有效數字表示不了就用科學計數法%.2g

    圖片.png圖片.png

(3)字符串的格式化輸出

標準輸出%s
右對齊,占位符10位%10s
左對齊,占位符10位%-10s
截取3位字符串%.3s
右對齊10位占位符,截取兩位字符串%10.2s

圖片.png圖片.png
2. format形式格式化輸出

(1) 相對于基本格式化輸出采用的%的方法,format()功能更加強大,該函數模塊把字符串當成一個模板,通過傳入參數進行格式化,并且使用大括號{}作為特殊字符代替%

name?=?"Ailice"
gender?=?"男“
age?=?23
print("姓名:%s 性別:%s 年齡:%d"%(name,gender,age))
print("姓名:{}?性別:{}?年齡:{}".format(name,gender,age))

(2)還可以在括號里加標識符,后面要用的時候,就不需要在format函數里添加參數了,可以直接用

print("姓名:{0}?性別:{1}?年齡:{2}?學生姓名{0}".format(name,gender,age))

(3) 標識符除了可以使用數字也可以直接用關鍵字

print("姓名:{name}?性別:{gender}?姓名:{name}".format(name?=?name,gender?=?gender))

(4)Format的進階用法
forma占位符{}里面使用:對齊方向 占位長度<默認左對齊,>右對齊,^中間對齊,

print("姓名:{:<10}".format(name))
print("姓名:{:>10}".format(name))
print("姓名:{:^10}".format(name))

除了對齊之外還可以使用取位數:{:4s}、{:.2f}

print("{:10.2f}".format(3.14159))?#十位占位長度,小數點后保留兩位有效數字
print("{:>10.2f}".format(3.14159))?#十位占位長度,小數點后保留兩位有效數字,右對齊

(5)Format對數值的操作

  • 二進制輸出b

print("二進制打印{0:b}?{1:b}".format(num01,num02))??#0、1是編號
  • 整數轉Unicode字符串輸出c

print("把整數轉化成ASCII碼:?{0:c}?{1:c}".format(65,66))

輸出結果:

把整數轉化成ASCII碼:?A?B
  • 十進制輸出d

  • 八進制輸出o

  • 十六進制輸出x

  • 科學計數法輸出e,默認保留小數點后六位

print("科學計數法輸出:{:.2e}".format(123.345))

輸出結果:

科學計數法輸出:1.23e+02
  • 一般格式輸出g,六位可以表示就用六位表示,六位表示不了就用科學計數法

  • 數字輸出n,當值為整數時和d相同,當值為浮點數是和g相同

  • 百分號輸出%,把數值轉化為百分數,小數點后默認保留六位

print("百分號表示:{:.2%}".format(2))

輸出結果:

百分號表示:200.00%
  • ,千位分隔符,自動把數值轉化為貨幣千位分割的形式

print("千位分隔符:{:,}".format(102334489))

輸出結果:

千位分隔符:102,334,489

???

Linux學習筆記(一)使用文本編輯器Vim

Linux學習筆記(二)系統基礎操作

Linux學習筆記(三)文件和文本的查看

Linux學習筆記(四)目錄操作

Linux學習筆記(五)打包壓縮與解壓縮

Linux學習筆記(六)用戶與用戶組

Linux學習筆記(七)文件與目錄的權限

Linux學習筆記(八)網絡管理

Linux學習筆記(九)軟件包管理


·END·

小雨編程

分享有價值的學習教程

O(∩_∩)O哈哈~感謝你的關注

總結了4200字的干貨,不點個“在看”嗎

總結

以上是生活随笔為你收集整理的pycharm 类型注释_学习Python第一步,变量与数据类型的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。