摘要:編碼應(yīng)運而生,編碼實際上是一個大的編碼表,他使用最少兩個字節(jié)表示一個字符的編碼方式每種語言占用了碼表的某個段,在對應(yīng)的段內(nèi)編碼自己的語言比如對應(yīng)的編碼就是。
輸出
python 的輸出使用print 語法
print "hello world" //hello world //或者 print "hello", "world" //hello world //或者 print "hello" "world" //helloworld
請注意上面的第二和第三個,一個使用,連接字符串,一個使用空格連接字符串,輸出的結(jié)果中,逗號連接的中間有個空格,而空格連接的,中間沒有任何東西
輸入python的輸入使用raw_input函數(shù)
hello = raw_input("Input your word:") //括號中的參數(shù)表示輸入的提示字符串,輸入的結(jié)果保存在`hello`變量中空值
python中的空值用None表示,類似于PHP中的Null
字符串編碼python 中的字符串編碼問題,首先要搞明白asicii編碼, unicode編碼和utf-8編碼之間的關(guān)系,這里總結(jié)如下:
asicii編碼長度8位(一個字節(jié)),包含了所有的英文字母和一些常見的字符,
能夠表示256種編碼方式,比如字母a對應(yīng)的asicii編碼就是122(01111010),
因為英文總共也就只有那么些個字母和字符,所以一般情況下,asicii碼表中的編碼足夠英文編碼使用,但是其他的語言,比如中文,常見的中文字符就起碼好幾萬個,
一個字節(jié)明顯不夠, 這就催生了針對中文的編碼表,使用兩個字節(jié)甚至是三個字節(jié)表示一個中文字符,
比如GB2312編碼(2個字節(jié)表示一個字符), 但假如一個使用GB2312編碼的文件,
被一個其他編碼比如使用asicii編碼的編輯器打開,
你看到的卻都是亂碼,這是因為asicii編碼使用一個字節(jié)一個字節(jié)讀取二進制文件(文件最終還是以二進制形式保存在磁盤中的)的關(guān)系,
每次讀取的都是原來2個字節(jié)長度中的一半的長度,一個中文字符的一半,我們當然看不懂了。 unicode編碼應(yīng)運而生,
unicode編碼實際上是一個大的編碼表,
他使用最少兩個字節(jié)表示一個字符的編碼方式,每種語言占用了碼表的某個段,在對應(yīng)的段內(nèi)編碼自己的語言,比如`a` 對應(yīng)的unicode編碼就是`00000000 01111010`。這樣,世界上的很多語言就能統(tǒng)一使用unicode編碼進行寫入和讀取了 utf-8編碼則是將unicode編碼節(jié)約,
比如把英文字母定義為1個字節(jié),中文字符定義為3個字節(jié),這樣英文字母中的前面的那么多沒用的0位就能砍去了
python 早期不支持unicode編碼, 但現(xiàn)在已經(jīng)支持,使用u"..."語法, 可以輸出中文內(nèi)容了
print u"中" //中 print u"u4e2d" //中 u"中" //u"u4e2d"
最下面的輸出打印出的是中的十六進制unicode編碼, 在print的時候,u"中"和u"u4e2d"的輸出結(jié)果都是一樣的
另外,如果要計算中文字符串的字符長度的話,也要帶u,否則輸出的長度就是字節(jié)長度,而不是字符串長度了
print len(u"中") //1 print len("中") //3
如果在編碼文件中要輸入或輸出中文或者其他的非asicii編碼的字符時,要在文件的第二行(第一行一般是#!/usr/bin/env python)加上# -*- coding: utf-8 -*-
list(列表) 和 tuple(元組)list 和 tuple 類似于PHP中的索引數(shù)組,list和tuple的結(jié)構(gòu)相似,但list可以隨時進行寫入和刪除,而tuple一但初始化就不可以改動
list(列表):
使用[]語法表示,比如
names = ["Tony", "Sam", "James"]
可以隨時寫入和刪除
寫入末尾使用append,
names.append("Yi_Zhi_Yu") print names //["Tony", "Sam", "James", "Yi_Zhi_Yu"]
插入指定位置,注意這個插入,比如要插入一個"Gordon"在"Tony"和"Sam"之間,"Gordon"的索引值就是1, 原先的"Tony"后面的所有元素的索引各+1
names.insert(1,"Gordon") print names //["Tony", "Gordon", "Sam", "James", "Yi_Zhi_Yu"]
更新元素,使用類似于PHP的語法,直接對指定的索引位置的元素賦值
names[1] = "Wang" print names//["Tony", "Wang", "Sam", "James", "Yi_Zhi_Yu"]
刪除元素,使用pop語法,pop函數(shù)輸出的是刪除的元素值
names.pop() //刪除末尾 print names //["Tony", "Wang", "Sam", "James"] names.pop(1)//刪除指定位置(1位置"Wang") print names //["Tony", "Sam", "James"]
tuple(元組):
使用()語法表示
一但初始化,不可改變
單個元素的寫法要加一個,,與算數(shù)運算中的括號區(qū)分開,如
name=("Yi_Zhi_Yu",)//("Yi_Zhi_Yu",)
python在顯示單個元素的tuple時,也會帶",", 如果不帶的話,輸出的就只是一個字符串了
name = ("Yi_Zhi_Yu") //Yi_Zhi_Yu
學習參考:
廖雪峰python教程
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/45365.html
摘要:貢獻者飛龍版本最近總是有人問我,把這些資料看完一遍要用多長時間,如果你一本書一本書看的話,的確要用很長時間。為了方便大家,我就把每本書的章節(jié)拆開,再按照知識點合并,手動整理了這個知識樹。 Special Sponsors showImg(https://segmentfault.com/img/remote/1460000018907426?w=1760&h=200); 貢獻者:飛龍版...
摘要:請回復(fù)這個帖子并注明組織個人信息來申請加入。權(quán)限分配靈活,能者居之。數(shù)量超過個,在所有組織中排名前。網(wǎng)站日超過,排名的峰值為。導航歸檔社區(qū)自媒體平臺微博知乎專欄公眾號博客園簡書合作侵權(quán),請聯(lián)系請抄送一份到贊助我們 Special Sponsors showImg(https://segmentfault.com/img/remote/1460000018907426?w=1760&h=...
摘要:學習筆記七數(shù)學形態(tài)學關(guān)注的是圖像中的形狀,它提供了一些方法用于檢測形狀和改變形狀。學習筆記十一尺度不變特征變換,簡稱是圖像局部特征提取的現(xiàn)代方法基于區(qū)域圖像塊的分析。本文的目的是簡明扼要地說明的編碼機制,并給出一些建議。 showImg(https://segmentfault.com/img/bVRJbz?w=900&h=385); 前言 開始之前,我們先來看這樣一個提問: pyth...
摘要:此文是記錄我在學習的過程,主要目的是怕學了后面的了前面的,方便復(fù)習。不得不承認,老外的課程確實比國內(nèi)的課程更有趣。所以提升性能的個關(guān)鍵降低電子需要行徑的距離提高每秒發(fā)射電子的次數(shù)。 此文是記錄我在udacity.com學習python的過程,主要目的是怕學了后面的wan了前面的,方便復(fù)習。也希望能幫到和我一樣的初學者,這個課程的是Udacity的《計算機基礎(chǔ)導論》,https://cl...
摘要:主頁暫時下線社區(qū)暫時下線知識庫自媒體平臺微博知乎簡書博客園合作侵權(quán),請聯(lián)系請抄送一份到特色項目中文文檔和教程與機器學習實用指南人工智能機器學習數(shù)據(jù)科學比賽系列項目實戰(zhàn)教程文檔代碼視頻數(shù)據(jù)科學比賽收集平臺,,劍指,經(jīng)典算法實現(xiàn)系列課本課本描述 【主頁】 apachecn.org 【Github】@ApacheCN 暫時下線: 社區(qū) 暫時下線: cwiki 知識庫 自媒體平臺 ...
閱讀 3197·2021-09-06 15:02
閱讀 2243·2019-08-30 15:48
閱讀 3439·2019-08-29 11:08
閱讀 3281·2019-08-26 13:55
閱讀 2440·2019-08-26 13:35
閱讀 3162·2019-08-26 12:11
閱讀 2598·2019-08-26 11:48
閱讀 881·2019-08-26 11:42