日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

Python語言學(xué)習(xí):Python語言學(xué)習(xí)之?dāng)?shù)據(jù)類型/變量/字符串/操作符/轉(zhuǎn)義符的簡介、案例應(yīng)用之詳細(xì)攻略

 處女座的程序猿 2022-09-13 發(fā)布于上海

Python語言學(xué)習(xí):Python語言學(xué)習(xí)之?dāng)?shù)據(jù)類型/變量/字符串/操作符/轉(zhuǎn)義符的簡介、案例應(yīng)用之詳細(xì)攻略


1、基本數(shù)據(jù)類型

int整型、long長整型、float浮點型、complex復(fù)數(shù)
str字符串

類型轉(zhuǎn)換函數(shù)

print(type(3.14))? ? ? ? ? ? ? ? ? ?#獲取括號內(nèi)參數(shù)的數(shù)據(jù)類型
print(isinstance(3.14,float)) ?#判斷類型;判斷a是否是float類型
print(int(5.99))? ? ? ? ? ? ? ? ? ? ??#轉(zhuǎn)為整型;輸出結(jié)果是5;不是四舍五入而是直接砍掉小數(shù)點
print(str(5.99))? ? ? ? ? ? ? ? ? ? ??#轉(zhuǎn)為字符串型;輸出結(jié)果是'5.99'
print(float(520))? ? ? ? ? ? ? ? ? ??#轉(zhuǎn)為小數(shù)點型;輸出結(jié)果是520.0

1.1、數(shù)值numerics類型

int整型:包含boolean,
float浮點型:Python是用C語言編寫的,float浮點型對應(yīng)C語言的double類型
complex復(fù)數(shù)類型:real實部,imaginary虛部,實現(xiàn)方式z.real和。Python不同于其他語言,直接支持復(fù)數(shù)類型,例如

import?sys
a =
3
b = 4
c = 5.66
d = 8.0
e = complex(c, d)? ? ? ? ? ? ? ? ? ? ??#創(chuàng)建一個值為 real + imag * j 的復(fù)數(shù)
f = complex(float(a), float(b))
print?("a is type"?, type(a))? ? ? ? ??#使用type函數(shù)查看變量所屬類型
print?("c is type"?, type(c))
print?("e is type"?, type(e))
print?("f is type"?, type(f))
print(a + b)
print?(b / a)
print?(b // a)? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?#雙斜杠//表示b/a之后,再約等于的整型
print?(e)? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?#打印復(fù)數(shù)的值
print?("e's real part is: "?, e.real)
print?("e's imaginary part is: "?, e.imag)
print?(sys.float_info)? ? ? ? ? ? ? ? ? ??#float類型通過系統(tǒng)命令打印出其支持的范圍

1.2、變量Variable

變量是用來存儲信息的,變量名屬于identifier,

(1)、變量命名規(guī)則

第一個字符必須是字母或者下劃線,其余字符可以是字母,數(shù)字,或者下劃線,區(qū)分大小寫,如:合法:i、 name_3_4、big_bang;不合法:2people、this is tom、my-name、 >123b_c2

(2)、全局變量和局部變量

x = 60??????#全局變量

def?foo1(x):

????print("x is: "?+ str(x)) ?#x is: 60

????x = 3? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??#局部Local變量

????print("change local x to "?+ str(x))? ??#change local x to 3

foo1(x)? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??#輸出全局變量

print('x is still', str(x))? ? ? ? ? ? ? ? ? ? ? ? ? ? ?#x is still 60

(1)函數(shù)內(nèi)部使用global關(guān)鍵字修改全局變量

x = 60

def?foo2():

????global?x? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??? ??#內(nèi)部,通過關(guān)鍵詞global聲明為全局變量

????print("x is: "?+ str(x))? ? ? ? ? ? ? ? ? ? ?#x is: 60

????x = 3

????print("change local x to "?+ str(x)) #change local x to 3

foo2()

print('value of x is'?, str(x))? ? ? ? ? ? ? ??#value of x is 3

#局部變量和全局變量:

def?discounts(price,rate):? ? ? ? ? ? ? ? ? ? ? ? ??#加上*號代表形參*params

????final_price=price*rate

????old_price=88? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??#此處試圖修改全局變量

????print("函數(shù)內(nèi)部試圖修改全局變量,修改后old_price的值是:"?,old_price)

????return?final_price

old_price=float(input("請輸入原價:"))

rate=float(input("請輸入折扣率:"))

new_price= discounts(old_price,rate)? ? ? ? ? ? ? ? ? ?#調(diào)用函數(shù);輸出的是局部變量: 88

print("外部修改后old_price的值是:"?,old_price)? ?#全局變量直接輸出: 100.0

print("打折后的價格是:"?,new_price)? ? ? ? ? ? ? ? ? ??#直接輸出:80.0

1.3、字符串String

字符串:我們所認(rèn)知的字符串就是引號內(nèi)的一切東西,也可以將字符串叫做文本。
(1)、字符串拼接:python中的字符串在C語言中體現(xiàn)為是一個字符數(shù)組,每次創(chuàng)建字符串時候需要在內(nèi)存中開辟一塊連續(xù)的空,并且一旦需要修改字符串的話,就需要再次開辟空間,+號每出現(xiàn)一次就會在內(nèi)從中重新開辟一塊空間。

(1)、單引號、雙引號、三引號用法

print("hello World!"); ? ? #python里面的字符串既可以單引號也可以雙引號
print('hello World!');
print('''This is first line
This is second line
Last line''');

(2)、不可變(immutable)、字符串的format用法

age?= 3
name = "Tom"
print("{0} was {1} years old".format(name, age))??#{0}、{1}分別對應(yīng)字符串的format內(nèi)的參數(shù)
print(name + " was "?+ str(age) + " years old")? ? ?#使用+符號,聯(lián)合所有字符串的方法

(3)、當(dāng)字符串中出現(xiàn)單雙引號時,使用轉(zhuǎn)義符號(\)

print("Let\'s go!")? ? ?#使用轉(zhuǎn)義字符(\)
print('C:\now')? ? ? ? ?#此時\反斜杠表示是換行
str1=r'C:\now'? ? ? ? ??#使用原始字符串,只需加個r
print(str1)? ? ? ? ? ? ? ??#C:\now
str2="""春天來了,
春天的腳步更近了
啊,
春天"""

str2
print(str2[:2]) ?#輸出:春天

(4)、字符串格式化、各種符號含義

格式化可理解為翻譯

符號

說明

%c

格式化字符及其ASCII碼

%s

格式化字符串

%d

格式化整數(shù)

%o

格式化無符號八進(jìn)制數(shù)

%x

格式化無符號十六進(jìn)制數(shù)

%X

格式化無符號十六進(jìn)制數(shù)(大寫)

%f

格式化浮點數(shù)字,可指定小數(shù)點后的精度

%e

用科學(xué)計數(shù)法格式化浮點數(shù)

%E

作用同%e,用科學(xué)計數(shù)法格式化浮點數(shù)

%g

根據(jù)值的大小決定使用%f 或%e

%G

作用同%g,根據(jù)值的大小決定使用%f 或者%E

#format的位置參數(shù)和關(guān)鍵字參數(shù)
str="{0}上海{1}有限公司"
print(str.format("云崖牛","智能")) ?#format的位置參數(shù)應(yīng)用;云崖牛上海智能有限公司
str2="{0:.1f}{1}"? ? ? ? ? ? ? ? ? ? ? ? ? ??#四舍五入保留一個浮點數(shù)
print(str2.format(3.19,"GB")) ?? ? ??#輸出:3.2GB

str1="{a}上海有限公司"
print(str1.format(a="云崖牛",b="設(shè)計")) #format的關(guān)鍵字參數(shù)應(yīng)用;云崖牛上海設(shè)計有限公司

1)、字符串格式化符號

print("%c"?% 97) ? ? ? ? ? ? ? ? ? ? ? ? ? ??#格式化字符和ASCII碼;輸出a
print("%c %c %c"?% (97,98,99))? ? ?#格式化字符和ASCII碼;輸出a b c
print("%s"?% "云崖牛") ? ? ? ? ? ? ? ? ? ?#格式化字符串
print("%d+%d=%d"?% (1,2,1+2)) ???#格式化整數(shù)
#(1)格式化進(jìn)制符號(人類有10個手指頭,故常用十進(jìn)制):%o八進(jìn)制、%x十六進(jìn)制、%X十六進(jìn)制大寫

print("%X"?% 10) ? ? ? ? ? ??#格式化整數(shù);輸出A
print("%f"?% 3.14) ?? ? ? ? ?#格式化小數(shù),定精度;默認(rèn)六位;輸出3.140000。%e是科學(xué)計數(shù)法,但%g是智能選擇%f或%e

2)、格式化操作符輔助指令

print("%10.2f"?% 3.1467) ? ??#前邊占10位,后邊精確兩位小數(shù);輸出: ?????3.15
print("%010d"?% 3.14) ? ? ? ?#前邊占10位,0代替空格(前邊再加-表示左對齊);輸出:0000000003
print("%.2e"?% 31.467) ?? ? ?#輸出:3.15e+01
print("%+d"?% 5) ? ? ? ? ? ? ? ??#十進(jìn)制%d,輸出:+5
print("%#o"?% 10) ?? ? ? ? ? ? ?#輸出八進(jìn)制0O、十六進(jìn)制0x;輸出:0o12

1.4、格式化操作符輔助命令

符號

說明

m.n

m是顯示的最小總寬度,n是小數(shù)點后的位數(shù)

-

用于左對齊

+

在正數(shù)前面顯示加號(+)

#

在八進(jìn)制數(shù)前面顯示 '0o',在十六進(jìn)制數(shù)前面顯示'0x'或 '0X'

0

顯示的數(shù)字前面填充’0’取代空格

1.5、python的轉(zhuǎn)義字符及其含義

符號

說明

\'

單引號

\"

雙引號

\a

發(fā)出系統(tǒng)響鈴聲

\b

退格符

\n

換行符

\t

橫向制表符(TAB)

\v

縱向制表符

\r

回車符

\f

換頁符

\o

八進(jìn)制數(shù)代表的字符

\x

十六進(jìn)制數(shù)代表的字符

\0

表示一個空字符

\\

反斜杠

2、運算、操作符及其優(yōu)先級問題

算數(shù)運算

a=b=c=d=e=10

a+=1

b-=1

c*=1

d/=1???#輸出浮點型

e//=1??#輸出整型

f=a%1??#輸出余數(shù)

g=a**2?#求a得2次冪

print(a,b,c,d,e,f,g) #輸出結(jié)果為11 9 10 10.0 10 0 81

(1)如果對列表進(jìn)行算數(shù):

list=[123,456]

#list1=[123,456]+"云崖牛" ?#加法運算是不對的

list2=list*3??#但可以乘法運算

print(list2) ?#輸出得到[123, 456, 123, 456, 123, 456]

比較運算

賦值運算

取模賦值運算%=、

取整除賦值運算//=、

邏輯運算

or?and?not?

成員運算

運算符in、not in:若在指定的序列中找到、找不到返回true

身份運算

運算符is、is not:判斷兩個標(biāo)識符是、不是引用自一個對象,返回true。

位運算

    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多