python如何让输出数据对齐、int类型和字符串都有_Python基础-基本数据类型之数字、字符串...
基本數(shù)據(jù)類型
1、數(shù)字 int
python 2 int 有范圍,超過該范圍則為long 類型
32位系統(tǒng)上,取值范圍為-2^31~2^31-1 ,即-2147483648~2147483647
64位系統(tǒng)上,取值訪問為-2^63~2^63-1,即-9223372036854775808~9223372036854775807
python 3 所有整型都是int 類型,沒有l(wèi)ong類型
eg:
#數(shù)字
input_num= input("請輸入數(shù)字:") #獲取從鍵盤輸入的數(shù)字
print("查看input_num的類型",type(input_num)) #查看類型
num= int(input_num) #int() 將str類型轉(zhuǎn)換為int類型.默認(rèn)10進制
print("查看num1的類型",type(num)) #查看類型
int() 默認(rèn)值輸入的英文則會報錯
File "D:/pyAuto/pythonDay/pythonbase/Day1.py", line 212, in
num= int(input_num) # int() 將str類型轉(zhuǎn)換為int類型.默認(rèn)10進制
ValueError: invalid literal for int() with base 10: ‘e‘
python3中的數(shù)字默認(rèn)進制為十進制,即python3默認(rèn)10=9+1。
在python中二進制用0b加相應(yīng)數(shù)字來表示,8進制用0o加相應(yīng)數(shù)字來表示,16進制用0x加相應(yīng)數(shù)字來表示。
數(shù)字轉(zhuǎn)換10進制、2進制、8進制、16進制
#數(shù)字
input_num= input("請輸入數(shù)字:") #獲取從鍵盤輸入的數(shù)字
print("查看input_num的類型",type(input_num)) #查看類型
num= int(input_num) #int() 將str類型轉(zhuǎn)換為int類型.默認(rèn)10進制
num1= int(input_num,base=2) #轉(zhuǎn)換為二進制
num2= int(input_num,base=8) #轉(zhuǎn)換為八進制
num3= int(input_num,base=16) #轉(zhuǎn)換為十六進制
print("查看num1的類型",type(num))print("查看num的值=%d,查看num1的值=%d,查看num2的值=%d,查看num3的值=%d"%(num,num1,num2,num3))
執(zhí)行結(jié)果如下:
請輸入數(shù)字:00011111
查看input_num的類型
查看num1的類型
查看num的值=11111,查看num1的值=31,查看num2的值=4681,查看num3的值=69905
"""因為十六進制已經(jīng)超過10了。所以,十六進制從十開始用字母代替,即十進制的1-16表現(xiàn)為:1、2、3、4、5、6、7、8、9、A、B、C、D、E、F、10"""input_alpha= input("請輸入英文:") #輸入A
num1= int(input_alpha,base=16)print("查看num的值=%d,"%(num1)) #則輸出10
bit_length()
age=0#0 0#1 1#2 10#3 11#4 100#5 101
while age < 11:
r= age.bit_length() #當(dāng)前數(shù)字的二進制,至少用n位表示
print("age=%s,占用%s位"%(age,r))
age+= 1"""
執(zhí)行結(jié)果
ge=0,占用0位
age=1,占用1位
age=2,占用2位
age=3,占用2位
age=4,占用3位
age=5,占用3位
age=6,占用3位
age=7,占用3位
age=8,占用4位
age=9,占用4位
age=10,占用4位
"""
2、字符串 str
1.python官方定義中的字母:默認(rèn)為英文字母+漢字即可
2.python官方定義中的數(shù)字:默認(rèn)為阿拉伯?dāng)?shù)字+帶圈的數(shù)字即可
#字符串
username=input("請輸入純英文字符串(小寫或者大寫):")if username.isalpha(): #判斷是否輸入值是否為字母
username1=username.upper() #轉(zhuǎn)換成大寫
username2=username.lower() #轉(zhuǎn)換成小寫
username3=username.capitalize() #首字母換成大寫,其他的字母換成小寫
username4=username.swapcase() #遇到大寫變小寫,遇小寫變大寫
#lower() 方法只對ASCII編碼,也就是‘A-Z’有效,對于其他語言(非漢語或英文)中把大寫轉(zhuǎn)換為小寫的情況只能用 casefold() 方法 例如德語 ?
username5=username.casefold()#str.center(width[, fillchar])返回一個指定的寬度 width 居中的字符串,如果 width 小于字符串寬度直接返回字符串,否則使用 fillchar 去填充。
#fillchar 只能一個字符,可有可無
username6=username.center(10,‘*‘)#str.count(sub, start= 0,end=len(string))
#sub -- 搜索的子字符串
#start -- 字符串開始搜索的位置。默認(rèn)為第一個字符,第一個字符索引值為0。
#end -- 字符串中結(jié)束搜索的位置。字符中第一個字符的索引為 0。默認(rèn)為字符串的最后一個位置。
username7=username.count("aa")#str.endswith(suffix[, start[, end]]) 如果字符串含有指定的后綴返回True,否則返回False。
#類似 str.startswith(suffix[, start[, end]])
#suffix -- 該參數(shù)可以是一個字符串或者是一個元素。
#start -- 字符串中的開始位置。
#end -- 字符中結(jié)束位置。
username8=username.endswith(‘yu‘)print("原字符%s;轉(zhuǎn)換成大寫%s;轉(zhuǎn)換成小寫%s;首字母換成大寫%s;遇到大變小,遇小變大%s;所有轉(zhuǎn)換成小寫%s"%(username,username1,username2,username3,username4,username5))print("center()返回的值%s;count()返回值%s;endswith()返回值%s"%(username6,username7,username8))else:print("輸入的不是純英文的")
ljust() 和rjust
ljust() 方法返回一個原字符串左對齊,并使用空格填充至指定長度的新字符串。如果指定的長度小于原字符串的長度則返回原字符串
rjust() 方法返回一個原字符串右對齊,并使用空格填充至指定長度的新字符串。如果指定的長度小于原字符串的長度則返回原字符串
zfill() 方法返回指定長度的字符串,原字符串右對齊,前面填充0。
#ljust() 方法返回一個原字符串左對齊,并使用空格填充至指定長度的新字符串。如果指定的長度小于原字符串的長度則返回原字符串
test="窗前明月光"test1=test.ljust(15,‘$‘)
test2=test.rjust(15)
test3=test.zfill(15)print(test1,test2,test3)"""窗前明月光$$$$$$$$$$
窗前明月光
0000000000窗前明月光"""
isspace()
方法檢測字符串是否只由空白字符組成。
test=‘123dd<>:"!@#$%^&*()‘test1="122\ndddd"test2="12 2 3"test3="" #空字符
test4=" " #包含一個空格的字符
print(test.isspace(),test1.isspace(),test2.isspace(),test3.isspace(),test4.isspace())"""執(zhí)行結(jié)果如下
False False False False True"""
isalnum()
判斷字符串中是否只包含 字母和數(shù)字
test=‘123 yuuu‘ #數(shù)字、空格、字母
test1=test.isalnum() #判斷字符串中是否只包含 字母和數(shù)字
test=‘123yuuuSS‘ #數(shù)字、字母
test2=test.isalnum()print("test1==%s;test2==%s"%(test1,test2))"""test1==False;test2==True"""
isprintable()
判斷字符串中所有字符是否都是可打印字符(in repr())或字符串為空。Unicode字符集中“Other” “Separator”類別的字符為不可打印的字符(但不包括ASCII碼中的空格(0x20))??捎糜谂袛噢D(zhuǎn)義字符。
ASCII碼中第0~32號及第127號是控制字符;第33~126號是可打印字符,其中第48~57號為0~9十個阿拉伯?dāng)?shù)字;65~90號為26個大寫英文字母,97~122號為26個小寫英文字母
test=‘123dd<>:"!@#$%^&*()‘test1="122\ndddd"
print(test.isprintable(),test1.isprintable()) #是否存在不可顯示的字符 \n 換行 \t 不可見
"""執(zhí)行結(jié)果
True False"""
Istitle()和title()
Istitle() 方法檢測字符串中所有的單詞拼寫首字母是否為大寫,且其他字母為小寫。title() 方法返回"標(biāo)題化"的字符串,就是說所有單詞的首個字母轉(zhuǎn)化為大寫,其余字母均為小寫(見 istitle())。
test="Hi, My name is sugh"test1="Hi, My Name Is Sugh"test2="Hi, My Name Is Sugh,123"
print(test.title())print(test.istitle(),test1.istitle(),test2.istitle())"""執(zhí)行結(jié)果如下
Hi, My Name Is Sugh
False True True"""
expandtabs(tabsize=8)
expandtabs(tabsize=8) 把字符串中的 tab 符號(‘\t‘)轉(zhuǎn)為空格,tab 符號(‘\t‘)默認(rèn)的空格數(shù)是 8
#expandtabs(tabsize=8) 把字符串中的 tab 符號(‘\t‘)轉(zhuǎn)為空格,tab 符號(‘\t‘)默認(rèn)的空格數(shù)是 8
test_num="\tdddddddddddddddddddddddddd"test_num1="ddddd\td"test_num2="12345678\t9"test=test_num.expandtabs(6)
test1=test_num1.expandtabs(6)
test2=test_num2.expandtabs(6)
test_num3="username\tpasswd\nsugh\t123456\n012345\tdddddd"test3=test_num3.expandtabs(15)print("test==%s;test1==%s;test2==%s"%(test,test1,test2))print(test3)"""執(zhí)行結(jié)果如下
test== dddddddddddddddddddddddddd;test1==ddddd d;test2==12345678 9
username passwd
sugh 123456
012345 dddddd"""
isisdigit()、isdecimal() 、isnumeric()
isdigit()檢測字符串是否只由數(shù)字組成isdecimal() 方法檢查字符串是否只包含十進制字符。這種方法只存在于unicode對象isnumeric()字符串是否只由數(shù)字組成,數(shù)字可以是: Unicode 數(shù)字,全角數(shù)字(雙字節(jié)),羅馬數(shù)字,漢字?jǐn)?shù)字。指數(shù)類似 2 與分?jǐn)?shù)類似 ? 也屬于數(shù)字**
test=‘123‘test1=test.isdigit() #isdigit()檢測字符串是否只由數(shù)字組成
test4=test.isdecimal() #isdecimal() 方法檢查字符串是否只包含十進制字符。這種方法只存在于unicode對象
test=‘123①‘test2=test.isdigit()
test5=test.isdecimal()
test=‘123①dddd‘test3=test.isdigit()print("test1=%s;test2=%s;test3=%s;test4=%s;test5=%s"%(test1,test2,test3,test4,test5))"""執(zhí)行結(jié)果如下
test1=True;test2=True;test3=False;test4=True;test5=False"""test=‘一‘
#isdigit()檢測字符串是否只由數(shù)字組成
test1=test.isdigit()#isdecimal() 方法檢查字符串是否只包含十進制字符。這種方法只存在于unicode對象
test2=test.isdecimal()#isnumeric()字符串是否只由數(shù)字組成,數(shù)字可以是: Unicode 數(shù)字,全角數(shù)字(雙字節(jié)),羅馬數(shù)字,漢字?jǐn)?shù)字。指數(shù)類似 2 與分?jǐn)?shù)類似 ? 也屬于數(shù)字
test3=test.isnumeric()print("test1=%s;test2=%s;test3=%s"%(test1,test2,test3))"""執(zhí)行結(jié)果如下
test1=False;test2=False;test3=True"""
join()
方法用于將序列中的每個元素按照指定的字符進行拼接生成一個新的字符串
test="窗前明月光,疑是地上霜;舉頭望明月,低頭思故鄉(xiāng)"join_num=‘@@‘test_num=join_num.join(test)print(test_num)"""執(zhí)行結(jié)果如下
窗@@前@@明@@月@@光@@,@@疑@@是@@地@@上@@霜@@;@@舉@@頭@@望@@明@@月@@,@@低@@頭@@思@@故@@鄉(xiāng)"""test="窗前明月光,疑是地上霜;舉頭望明月,低頭思故鄉(xiāng)"join_num=‘@@‘test_num=test.join(join_num)print(test_num)"""執(zhí)行結(jié)果如下
@窗前明月光,疑是地上霜;舉頭望明月,低頭思故鄉(xiāng)@"""
lstrip()、rstrip()、strip()
lstrip()方法用于截掉字符串左邊的空格或指定字符; 默認(rèn)去除\n、\t、空白
rstrip()方法用于截掉字符串右邊的空格或指定字符; 默認(rèn)去除\n、\t、空白
strip()方法用于移除字符串頭尾指定的字符(默認(rèn)為空格)或字符序列; 默認(rèn)去除\n、\t、空白
test="---111-222-333-444-555--"
print(test.lstrip(‘-‘)) #去除左邊的指定字符
print(test.rstrip(‘-‘)) #去除右邊的指定字符
print(test.rstrip(‘-45‘)) #去除右邊的指定字符
print(test.rstrip(‘1-45‘)) #去除右邊的指定字符
print(test.split(‘---‘)) #去除全部指定字符
print(test.split(‘-45‘)) #去除全部指定字符
print(test.split(‘222‘)) #去除全部指定字符
"""執(zhí)行結(jié)果如下
111-222-333-444-555--
---111-222-333-444-555
---111-222-333
---111-222-333
[‘‘, ‘111-222-333-444-555--‘]
[‘---111-222-333-444-555--‘]
[‘---111-‘, ‘-333-444-555--‘]"""
test="this is string example....wow!!!"
print(test.lstrip()) #去除左邊的空格
print(test.rstrip()) #去除右邊的空格
print(test.split()) #去除全部空格
"""this is string example....wow!!!
this is string example....wow!!!
[‘this‘, ‘is‘, ‘string‘, ‘example....wow!!!‘]"""
maketrans()、translate(table)
maketrans() 方法用于創(chuàng)建字符映射的轉(zhuǎn)換表,對于接受兩個參數(shù)的最簡單的調(diào)用方式,第一個參數(shù)是字符串,表示需要轉(zhuǎn)換的字符,第二個參數(shù)也是字符串表示轉(zhuǎn)換的目標(biāo)。
兩個字符串的長度必須相同,為一一對應(yīng)的關(guān)系。
translate(table) 方法根據(jù)參數(shù)table給出的表(包含 256 個字符)轉(zhuǎn)換字符串的字符,要過濾掉的字符放到 deletechars 參數(shù)中
str=‘this is string example....wow!!!‘temp=str.maketrans("tsWp","9876")
new_num=str.translate(temp)print(new_num)"""執(zhí)行結(jié)果
9hi8 i8 89ring exam6le....wow!!!"""
partition() 、rpartition() 、split()、rsplit()、splitlines()
#partition() 方法用來根據(jù)指定的分隔符將字符串進行分割
#rpartition() 方法類似于 partition() 方法,只是該方法是從目標(biāo)字符串的末尾也就是右邊開始搜索分割符。。
#split() 通過指定分隔符對字符串進行切片,如果第二個參數(shù) num 有指定值,則分割為 num+1 個子字符串
#rsplit() 方法通過指定分隔符對字符串進行分割并返回一個列表,默認(rèn)分隔符為所有空字符,包括空格、換行(\n)、制表符(\t)等。
#rsplit() 類似于 split() 方法,只不過是從字符串最后面開始分割。
#splitlines( keepends ) 按照行(‘\r‘, ‘\r\n‘, \n‘)分隔,返回一個包含各行作為元素的列表
splitlines( keepends ) 如果參數(shù) keepends 為 False,不包含換行符,如果為 True,則保留換行符。
test_num="窗前1明月1光疑a1是地1上霜\n舉頭1望明月\t低1頭思故鄉(xiāng)1"
print(test_num.partition(‘1‘))print(test_num.rpartition(‘1‘))print(test_num.split(‘1‘))print(test_num.rsplit(‘1‘))print(test_num.splitlines(False))print(test_num.splitlines(True))"""執(zhí)行結(jié)果如下
(‘窗前‘, ‘1‘, ‘明月1光疑a1是地1上霜\n舉頭1望明月\t低1頭思故鄉(xiāng)1‘)
(‘窗前1明月1光疑a1是地1上霜\n舉頭1望明月\t低1頭思故鄉(xiāng)‘, ‘1‘, ‘‘)
[‘窗前‘, ‘明月‘, ‘光疑a‘, ‘是地‘, ‘上霜\n舉頭‘, ‘望明月\t低‘, ‘頭思故鄉(xiāng)‘, ‘‘]
[‘窗前‘, ‘明月‘, ‘光疑a‘, ‘是地‘, ‘上霜\n舉頭‘, ‘望明月\t低‘, ‘頭思故鄉(xiāng)‘, ‘‘]
[‘窗前1明月1光疑a1是地1上霜‘, ‘舉頭1望明月\t低1頭思故鄉(xiāng)1‘]
[‘窗前1明月1光疑a1是地1上霜\n‘, ‘舉頭1望明月\t低1頭思故鄉(xiāng)1‘]"""
startswith()、endswith()
#startswith(‘窗前1‘) 以xx開頭,符合條件則True;不符合條件,則False
#endswith(‘窗前1‘) 以xx結(jié)尾,符合條件則True;不符合條件,則False
test_num="窗前1明月1光疑a1是地1上霜\n舉頭1望明月\t低1頭思故鄉(xiāng)1"
print(test_num.startswith(‘窗前1‘))print(test_num.startswith(‘窗前11‘))print(test_num.endswith(‘故鄉(xiāng)1‘))print(test_num.endswith(‘故鄉(xiāng)2‘))"""True
False
True
False"""
isidentifier()
方法用于判斷字符串是否是有效的 Python 標(biāo)識符,可用來判斷變量名是否合法。
print( "else".isidentifier())print( "if".isidentifier())print( "class".isidentifier())print( "endswith".isidentifier())print( "endswith()".isidentifier())print( "_a".isidentifier())print( "123add".isidentifier())print( "123".isidentifier())print( "aa".isidentifier())print( "".isidentifier())print( "②中國".isidentifier())"""執(zhí)行結(jié)果如下
True
True
True
True
False
True
False
False
False
False
False"""
總結(jié)
以上是生活随笔為你收集整理的python如何让输出数据对齐、int类型和字符串都有_Python基础-基本数据类型之数字、字符串...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 第二十一章流 5 多种打开文件的方式 文
- 下一篇: python找重复元素_Python笔记