c语言对中文字符串编码_Python || 学习笔记(1):数据类型字符串变量和编码
數據類型
特性:
對于0很多的整數,python允許用_對0進行分離10_000_000_000就等同于10000000000
16進制用0x開頭進行表示
對于很大或很小的浮點數必須使用科學計數法表示,表示方法為 2.13e10表示2.13x10^10
轉義字符與C語言一樣,為\,用于轉換字符含義,不過python還提供了r"xxx"的輸入方式,表示xxx里面的字符都不轉義
>>> print('\\\t\\')\ \>>> print(r'\\\t\\')\\\t\\print可以打印多行字符
print('''line1line2line3''')打印出line1line2line3布爾值可以用and、or和not運算。
空值是Python里一個特殊的值,用None表示。None不能理解為0,因為0是有意義的,而None是一個特殊的空值。
如python這類變量本身類型不固定的語言稱之為動態語言,與之對應的是靜態語言。靜態語言在定義變量時必須指定變量類型,如果賦值的時候類型不匹配,就會報錯。
面向對象的含義就是指面向數據對象,我們可以把每個python變量看作指針,它指向內存中某個區域,通過指向不同的位置,就可以實現變量類型的不固定
運算
在python里,所有的除法‘ /’ 法返回結果都是浮點數
9/3=3.0
如果要實現像c語言里一樣的整數除法,需要使用到地板除//
10//3=3
小結
Python支持多種數據類型,在計算機內部,可以把任何數據都看成一個“對象”,而變量就是在程序中用來指向這些數據對象的,對變量賦值就是把數據和變量給關聯起來。
對變量賦值x = y是把變量x指向真正的對象,該對象是變量y所指向的。隨后對變量y的賦值不影響變量x的指向。
注意:Python的整數沒有大小限制,而某些語言的整數根據其存儲長度是有大小限制的,例如Java對32位整數的范圍限制在-2147483648-2147483647。
Python的浮點數也沒有大小限制,但是超出一定范圍就直接表示為inf(無限大)。
在python中
ord():?獲取字符的整數表示
chr():把編碼轉換為對應的字符
通常在py文件開頭加上以下兩行
#!/usr/bin/env python3# -*- coding: utf-8 -*-第一行注釋是為了告訴Linux/OS X系統,這是一個Python可執行程序,Windows系統會忽略這個注釋;
第二行注釋是為了告訴Python解釋器,按照UTF-8編碼讀取源代碼,否則,你在源代碼中寫的中文輸出可能會有亂碼。
格式化輸出
①和c一樣的采用%控制格式,此處格式符完全相同
②format()
另一種格式化字符串的方法是使用字符串的format()方法,它會用傳入的參數依次替換字符串內的占位符{0}、{1}……,不過這種方式寫起來比%要麻煩得多:
>>> 'Hello, {0}, 成績提升了 {1:.1f}%'.format('小明', 17.125)'Hello, 小明, 成績提升了 17.1%'
③f-string
最后一種格式化字符串的方法是使用以f開頭的字符串,稱之為f-string,它和普通字符串不同之處在于,字符串如果包含{xxx},就會以對應的變量替換:
>>> r = 2.5>>> s = 3.14 * r ** 2
>>> print(f'The area of a circle with radius {r} is {s:.2f}')
The area of a circle with radius 2.5 is 19.62
上述代碼中,{r}被變量r的值替換,{s:.2f}被變量s的值替換,并且:后面的.2f指定了格式化參數(即保留兩位小數),因此,{s:.2f}的替換結果是19.62。
小結
Python 3的字符串使用Unicode,直接支持多語言。
當str和bytes互相轉換時,需要指定編碼。最常用的編碼是UTF-8。Python當然也支持其他編碼方式,比如把Unicode編碼成GB2312:
>>> '中文'.encode('gb2312')b'\xd6\xd0\xce\xc4'
但這種方式純屬自找麻煩,如果沒有特殊業務要求,請牢記僅使用UTF-8編碼。
格式化字符串的時候,可以用Python的交互式環境測試,方便快捷。
總結
以上是生活随笔為你收集整理的c语言对中文字符串编码_Python || 学习笔记(1):数据类型字符串变量和编码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 两字伤感网名女生158个
- 下一篇: 小班社会优质课教案《咕噜噜》反思