這是我寫的一段程序,可以實(shí)現(xiàn)將字符串轉(zhuǎn)為二進(jìn)制。
創(chuàng)新互聯(lián)公司自2013年創(chuàng)立以來,先為運(yùn)河等服務(wù)建站,運(yùn)河等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為運(yùn)河企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
基本思路:
1,將一個(gè)字符串轉(zhuǎn)換為字符。這里采用了迭代器__iter__()內(nèi)置函數(shù),即可實(shí)現(xiàn)這個(gè)方法
2,將每一個(gè)字符轉(zhuǎn)換為十進(jìn)制,再轉(zhuǎn)化為二進(jìn)制。bin()函數(shù)只能將一個(gè)十進(jìn)制函數(shù)轉(zhuǎn)換為二進(jìn)制,ord()函數(shù)可以將一個(gè)字符轉(zhuǎn)換為十進(jìn)制(實(shí)質(zhì)就是這個(gè)字符的unicode編號),如此就實(shí)現(xiàn)了不同計(jì)數(shù)方法之間的轉(zhuǎn)化
作用就是把合理的數(shù)據(jù)轉(zhuǎn)換為需要的類型。int()整數(shù),float()浮點(diǎn)數(shù),str()字符串,list()列表,tuple()元組,set()集合……
比如a='12'這個(gè)是字符串類型,用int函數(shù)a=int(a)這時(shí)變量a就是整型,字符串'12'變?yōu)榱苏麛?shù)12。Python沒有變量聲明的要求,變量的屬性在賦值時(shí)確定,這樣變量的類型就很靈活。
有一種題目判斷一個(gè)整數(shù)是否回文數(shù),用字符串來處理就很簡單
a=1234321#整數(shù)
if str(a)==str(a)[::-1]:#借助字符串反轉(zhuǎn)比較就可以確定是否回文數(shù)。
還比如元組b=(1,3,2,4),元組是不可以更新刪除排序成員的,但是列表是可以的,通過列表函數(shù)進(jìn)行轉(zhuǎn)換來實(shí)現(xiàn)元組的更新刪除和排序。
b=(1,3,2,4)
b=list(b)
b.sort()
b=tuple(b)
這時(shí)得到的元組b就是一個(gè)升序的元組(1,2,3,4)
再比如你要輸入創(chuàng)建整數(shù)列表或者整數(shù)元組基本上寫法相同,就是用對應(yīng)的函數(shù)來最后處理。
ls=list(map(int,input().split()))#這個(gè)就是列表
tup=tuple(map(int,input().split()))#這個(gè)就是元組
再比如有個(gè)叫集合的,集合有唯一性,可以方便用來去重。
ls=[1,2,3,1,2,3,1,2,3]
ls=list(set(ls))#通過set()去重后,現(xiàn)在的ls里就是[1,2,3]去重后的列表。
python中強(qiáng)制將字符串轉(zhuǎn)換為數(shù)字的方法:
1、python中可以使用int()函數(shù)將字符串轉(zhuǎn)換為整型數(shù)字,int() 函數(shù)用于將一個(gè)字符串或數(shù)字轉(zhuǎn)換為整型。
int() 方法的語法:class int(x, base=10)
參數(shù)
x -- 字符串或數(shù)字。
base -- 進(jìn)制數(shù),默認(rèn)十進(jìn)制。
返回值:返回整型數(shù)據(jù)。
示例: s1 = '999'
if s1.isdigit():
num1 = int(s1)
type(num1)
num1
999
2、使用float()函數(shù)將字符串轉(zhuǎn)換為浮點(diǎn)數(shù)
float() 函數(shù)用于將整數(shù)和字符串轉(zhuǎn)換成浮點(diǎn)數(shù)。
float()方法語法:class float([x])
參數(shù)
x -- 整數(shù)或字符串
返回值:返回浮點(diǎn)數(shù)。
示例: s2 = '999.888'
if s2.isdigit():
num2 = float(s2)
type(num2)
Traceback (most recent call last):
File "", line 1, in
type(num2)
NameError: name 'num2' is not defined
s2.isdigit()
False
s2 = '999.888'
num2 = float(s2)
type(num2)
num2
999.888
1. 字符串字母處理
2. 字符串填充
str.ljust(width, fillchar)、str.center(width, fillchar)、str.rjust(width, fillchar)
返回一個(gè)指定的寬度 width 「居左」/「居中」/「居右」的字符串,如果 width 小于字符串寬度直接返回字符串,否則使用 fillchar 去填充。
3,字符串計(jì)數(shù)
str.count(sub, start, end)
#統(tǒng)計(jì)字符串里某個(gè)字符出現(xiàn)的次數(shù)??蛇x參數(shù)為在字符串搜索的開始與結(jié)束位置。
start, end遵循**“左閉右開”**原則。
4. 字符串位置
str.endswith(suffix, start, end)和str.startswith(substr, beg, end)
#判斷字符串是否以指定后綴結(jié)尾/開頭,如果以指定后綴「結(jié)尾」/「開頭」返回 True,否則返回 False。
5. 字符串查找
6. 字符串判斷
7. 字符串拼接
str.join() #將序列中的元素以指定的字符連接生成一個(gè)新的字符串。
s1 = "-" s2 = "" seq = ("r", "u", "n", "o", "o", "b")
# 字符串序列 print (s1.join( seq )) print (s2.join( seq )) r-u-n-o-o-b runoob
8. 統(tǒng)計(jì)字符串長度
str.len() #返回對象(字符、列表、元組等)長度或項(xiàng)目個(gè)數(shù)。
9. 去除字符兩側(cè)空格
str.lstrip()、str.rstrip()、str.strip() #截掉字符串「左邊」/「右邊」/「左右」兩側(cè)的空格或指定字符。
str0 = ' Hello World!' str0.lstrip() 'Hello World!' str1 = 'aaaa Hello World!' str1.lstrip('a') ' Hello World!'
10. str.maketrans(intab, outtab)和str.translate(table)
str.maketrans()創(chuàng)建字符映射的轉(zhuǎn)換表
str.maketrans()根據(jù)參數(shù)table給出的表轉(zhuǎn)換字符串的字符。
str.maketrans()傳入的也可以是字典
tab = {'e': '3', 'o': '4'} trantab = str.maketrans(tab) str0.translate(trantab) 'H3ll4 W4rld!'
11. 字符串替換
str.replace(old, new, max)
12. 字符分割
str.split(str, num)
13. 字符填充
str.zfill(width)
返回指定長度的字符串,原字符串右對齊,前面填充0。
1、全部轉(zhuǎn)換成大寫:upper()
用法: str = ‘marsggbo’
print str.upper()
結(jié)果:MARSGGBO
2、全部轉(zhuǎn)換成小寫:lower()
用法:str = 'MarsGGbO'
print str.lower()
結(jié)果:? marsggbo
3、首字母轉(zhuǎn)換成大寫:capitalize()? ,其余全部小寫
注意:此方法返回的字符串只有它的第一個(gè)字符大寫的副本。
用法:str = 'mars is VEry sliM and cLever!'
print str.capitalize()
結(jié)果:Mars is very slim and clever!
4、標(biāo)題首字母大寫:title()
用法:str = 'mARS iS slim and cLEver!'
print str.title()
結(jié)果:Mars Is Slim And Clever!
擴(kuò)展資料:
輸入一串字符,將大寫字母轉(zhuǎn)換成小寫字母,小寫字母轉(zhuǎn)換為大寫字母
a = input("請 輸入字符:")
b = []
for n in a :
if "a"= n = "z":
b.append(n.upper())
elif"A" = n = "Z" :
b.append(n.lower())
else:
b.append(n)
print("".join(b))
參考資料:百度百科——Python(計(jì)算機(jī)程序設(shè)計(jì)語言)
在寫python程序時(shí),常能用到一些函數(shù)和方法,總結(jié)一下,保存起來,方便查詢。
一、內(nèi)置函數(shù)
# abs()獲取數(shù)字絕對值
# chr(i)數(shù)字轉(zhuǎn)換為字符類型
# divmod() 獲取兩個(gè)數(shù)值的商和余數(shù)
# enumerate() 將可遍歷序列組合為索引序列
# float()轉(zhuǎn)換為浮點(diǎn)數(shù)
# format() 格式化字符串
# int()轉(zhuǎn)換為整數(shù)?
# input() 接受用戶輸入內(nèi)容
# len() 計(jì)算元素個(gè)數(shù)
# max() 返回最大值
# min() 返回最小值
# math.ceil() 返回指定數(shù)值的上舍整數(shù)
# open()打開文件并返回文件對象
# pow() 冪運(yùn)算
# print()打印輸出?
# range() 生成器
# reversed()反轉(zhuǎn)所有元素
# round()四舍五入求值
# sorted()對可迭代對象進(jìn)行排序?
# str() 轉(zhuǎn)換為字符串
# sum() 求和
# set() 創(chuàng)建集合
# tuple() 將序列轉(zhuǎn)換為元組
# zip()將可迭代對象打包成元組
二、方法
# append() 添加列表元素
# capitalize()首字母轉(zhuǎn)換為大寫?
# count()字符出現(xiàn)次數(shù)
# close() 關(guān)閉文件
# decode() 解碼字符串
# dict.keys() 獲取字典所有的鍵
# find()字符串首次出現(xiàn)的索引
# f.read() 讀取文件內(nèi)容
# dict.update()更新字典
# dict.items() 獲取字典鍵/值對
# dict.get() 返回指定鍵的值
# encode() 編碼字符串
# list.sort() 排序列表元素
# index() 元素首次出現(xiàn)的索引
# isdigit() 判斷字符串是否只由數(shù)字組成
# isupper() 是否所有字母都為大寫
# isnum() 判斷字符串是否由字母和數(shù)字組成
# islower() 是否所有字母都為小寫
# isdecimal() 檢查字符串是否只包含十進(jìn)制字符
# isalpha() 檢測字符串是否為純字母
# random.shuffle()隨機(jī)排序
# random.sample()返回?zé)o重復(fù)隨機(jī)數(shù)列表
# random.choice() 返回一個(gè)隨機(jī)元素
# random.randint() 生成指定范圍的隨機(jī)整數(shù)
# random.randrange() 生成指定范圍的指定遞增基數(shù)隨機(jī)整數(shù)
# pop() 刪除列表中的元素
# remove()刪除列表中的指定元素
# strip()去除空格
# lstrip()去除左側(cè)空格
# rstrip() 去除右側(cè)空格
# readline() 讀取單行內(nèi)容
# root.after() Tkinter中等待一段時(shí)間后再執(zhí)行命令
# str.isnumeric() 驗(yàn)證字符串是否為數(shù)字(適用于Unicode)
# split()分割字符串
# ord() 將字符轉(zhuǎn)換為整數(shù)
# replace() 字符串替換
# ljust() 左對齊填充
# rjust() 左對齊填充
# readlines() 讀取所有行內(nèi)容
# datetime.datetime.now() 返回指定時(shí)區(qū)的本地日期時(shí)間
# datetime.datetime.today() 獲取當(dāng)前本地日期的date對象
# datetime.utcnow() 返回當(dāng)前UTC時(shí)間的datetime對象
# time.strptime()把時(shí)間字符串解析為元組
# time.time()返回當(dāng)前時(shí)間的時(shí)間戳
# time.sleep()暫停指定秒數(shù)
# time.strftime() 返回指定格式的日期字符串
# time.mktime() 接收時(shí)間元組并返回時(shí)間戳
# os.getcwd() 獲取當(dāng)前工作目錄
# os.listdir() 獲取指定路徑下的目錄和文件列表
# os.makedirs() 遞歸創(chuàng)建目錄
# os.rename() 重命名目錄或文件
# os.path.exists() 判斷路徑是否存在
# upper() 全部轉(zhuǎn)換為大寫字母
# lower()? 全部轉(zhuǎn)換為小寫字母
# sys.stdout.write() 標(biāo)準(zhǔn)輸出打印
# sys.stdout.flush()刷新輸出?
# shutil.copy() 復(fù)制單個(gè)文件到另一文件或目錄
# write() 寫入文件內(nèi)容
# winsound.Beep() 打開電腦揚(yáng)聲器
# zfill() 在字符串前面填充0
三、循環(huán)語句
# break終止當(dāng)前循環(huán)
# continue 終止本循環(huán)進(jìn)入下一次循環(huán)
# with open() as file 以with語句打開文件(數(shù)據(jù)保存)
四、轉(zhuǎn)義字符
\ 行尾續(xù)行符
\' 單引號?
\'' 雙引號
\a 響鈴
\e 轉(zhuǎn)義
\n 換行
\t 橫向制表符
\f 換頁
\xyy 十六進(jìn)制yy代表的字符
\\反斜杠符號
\b 退格
\000 空
\v 縱向制表符
\r 回車
\0yy 八進(jìn)制yy代表的字符
\other 其他的字符以普通格式輸出
當(dāng)前文章:python字符轉(zhuǎn)換函數(shù) python字符轉(zhuǎn)換為數(shù)字
文章URL:http://jinyejixie.com/article46/dosceeg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供建站公司、移動(dòng)網(wǎng)站建設(shè)、企業(yè)建站、域名注冊、網(wǎng)站維護(hù)、App開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)