1.5 python的數值和字符串 1.6 元組 1.7 列表

1.5 python的數值和字符串

python數據類型分類

數值 字符串 列表 元組 字典python

數值類型

- 整型int
- 長整型long  //長整型後面會有一個L
- 浮點型float  //帶小數點,科學計數法也屬於浮點型
- 複數型complex  //後面帶一個j

字符串類型

有三種方法定義字符串類型 - str = 'this is a string' - str = "this is a string" //python下,單雙引號沒有區別 - str = '''this is a string'''安全

三重引號(docstring)除了能定義字符串還能夠用做註釋。數據結構

a = "abcde" 字符串是一個序列,可用索引取值 a[起始下標 : 終止下標 : 步長]app

a[0]="a" //取第一個值 a[-1]="e" //取最後一個 a[0:3]="abc" //取下標0到下標2函數

1.6 元組

字符串、列表和元組都是序列 序列的兩個主要特色是索引操做符和切片操做符 - 索引操做符讓咱們能夠從序列中抓取一個特定項目 - 切片操做符讓咱們可以獲取序列的一個切片,即一部分序列。this

###序列的基本操做code

len():  求序列的長度
+:         鏈接2個序列
*:         重複序列元素
in:        判斷元素是否在序列中
max(): 返回最大值
min(): 返回最小值
cmp(x, y):比較兩個序列是否相等

元組tuple

元組和列表十分類似 元組和字符串同樣是不可變的 - 元組能夠存儲一系列的值 - 元組一般用在用戶定義的函數可以安全地採用一組值的時候,即被使用的元組的值不會改變。對象

t = ('a',2,(3,))
t = (1,)  //元組中只有一個元素的時候,要加 「,」

元組的操做

- 元組和字符串同樣屬於序列類型,能夠經過索引和切片操做
- 元組值不可變

元組的拆分 - t = (1,2,3) a, b, c = t //a,b,c三個變量能夠分別賦予元組的值排序

元組有兩個方法索引

count() //統計元組數據個數 index() //輸出數據下標

1.7 列表

列表(list)是處理一組有序項目的數據結構,便可以在列表中存儲一個序列的項目。 列表是可變類型的數據 建立列表 - list1 = [] - list2 = list() - list3 = ['a',1,2]

列表操做

- 取值
    切片和索引
- 添加
    list.append()
- 刪除
    del list[]
    list.remove(list[])   //刪除第一個出現的value
- 修改
    list[] = x
- 查找
    var in list

· -插入 list.insert(value,object) //在對象前插入值 -排序 list.sort() -反序 list.reverse()

練習

練習1:

將 「123」 轉換成整數 將 「9999999999999999999」 轉換成長整數 將 「3.1415926」 轉換成一個浮點數 將 123 轉換成一個字符串 現有如下字符串 字符串1:" abc deFGh&ijkl opq mnrst((uvwxyz " 字符串2:" ABC#DEF GH%IJ MNOPQ KLRS&&TUVWX(&YZ " 使用字符串的各類方法轉換成以下方式 ABCDEFGHIJKLMNOPQRSTUVWXYZzyxwvutsrqponmlkjihgfedcba

a = "123"
a= int(a)
b = "9999999999999999999"
b = long(b)
c = "3.1415926"
c = float(c)
d = 123
d = str(d)
str1 = " abc deFGh&*ijkl opq mnrst((uvwxyz "
str2 = " ABC#DEF GH%IJ MNOPQ KLRS&&TUVWX(*&YZ "

m = []
for i in list(str1) :
	if i.isalpha():
		m.append(i.lower())

m.reverse()
print str(m)
n = []
str3 = ""
for i in list(str2) :
	if i.isalpha():
		str3 = str3 + i
for i in m :
	str3 = str3 + i 
print str3

練習2:

現有列表 list1 = ['XXXX', 'b', 3, 'c', '&', 'a', 3, '3', 3, 'aa', '3', 'XXXX'] list2 = ['e', 'f', 'g'] 要求對其作如下操做:

  1. 取出 ‘XXXX’ 中間的部分,造成一個新的列表list3
  2. 對list3 作一下幾部操做 1)刪除特殊符號 2)統計 3 在list3中出現的次數 3)用最簡短的代碼去除list3中 26個字母之外的元素(要求只能對list3操做) 4)對list3排序 5)在末尾追加'd',並把list2追加到list3
  • 一、

    list1 = ['XXXX', 'b', 3, 'c', '&', 'a', 3, '3', 3, 'aa', '3', 'XXXX'] list2 = ['e', 'f', 'g'] list3 = [] n = 1 for i in list1 : if i == 'XXXX' : n = n * -1 continue if n == -1 : list3.append(i) print list3

  • 二、

    num3 = 0 listrm = [] for i in list3 : if not str(i).isalpha(): if not str(i).isalnum() : listrm.append(i) elif str(i) == '3' : num3 += 1 for i in listrm : list3.remove(i) print num3 print list3

    list3 = [i for i in list3 if str(i).isalpha()]

    list3.sort() list3.append("d") list3 = list3 + list2 print list3

練習3.

現有兩個變量 a = ('h',) b = ('h') 1)將a和b分別追加到上一題的list3中,觀察有什麼區別 2)將1生成的list3轉換成元組(擴展:本身搜索方法) 3)打印出只有一個元素'h'的元組,在2中生成的元組中的索引 a = ('h',) b = ('h') list3.append(a) lsit3.append(b) print list3

相關文章
相關標籤/搜索