python进阶二_基本数据类型与操作


一.数据类型

1.整数,长整数,浮点数,复数

在python中尤其要注意的是复数,复数由实数部分和虚数部分构成,real + imag(j/J)它们都是浮点数,其中虚数后缀j/J

例如:

\

<喎?http://www.Bkjia.com/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+16LS4qO6PC9wPgo8cD5Db25qdWdhdGUoKcfztcTKx7jDuLTK/bXEubLp7ri0yv08L3A+CjxoMj4yLtfWt/u0rjwvaDI+CjxwPiAgICAgINXiwO/Wu7zytaXX9tK7z8LLtcP3o6y52NPa19a3+7Suo6zT0LrctuDQ6NKqwcu94rXE1qrKtqOs1NpweXRob27W0LWl0v26xaGv0+vLq9L9usWhr6Gvvvm/yda4yr7X1rf7tK6jrNDo0qrXotLitcTKx7WrztLDx9Do0qqx7bTvtuDQ0NfWt/u0rrXEyrG68tDo0qrKudPDyP3S/brFoa+hr6GvPC9wPgo8cD48aW1nIHNyYz0="http://www.2cto.com/uploadfile/Collfiles/20140309/20140309090917339.jpg" alt="\">

注意:

在我们使用三引号的时候我们可以发现其中可以随便使用单引号和双引号,并且其中的转义字符都失效了。。

3.Unicode

在python中,为了支持更多的语言,Unicode被引用进来,为了让Unicode与ASCII码值的字符串看起来尽可能的相像,python的字符串从原来的简单的数据类型改变成了真正的对象,ASCII 字符串成了StringType,Unicode字符串成了UnicodeType类型,在任何要和Unicode兼容的代码里都不建议使用string模块.Python里面所有默认的字符串都用的是ASCII编码,可以通过在字符串前面加一个’u’前缀的方式声明要编成Unicode字符串。

Unicode支持多种不同的编码的方式,如ASCII,ISO8859-1/Latin-1

UTF-8,UTF-16

代码示例:

\

然后我们进入python文件的目录,并运行:

\

4.列表List

1.列表长度是动态的,可任意添加删除元素

2.用索引可以很方便的访问元素,甚至返回子列表

3.list:列表(即动态数组,C++标准库的vector,但可含不同类型的元素于一个list中)
a = ["I","you","he","she"] #元素可为任何类型。

4.下标:按下标读写,就当作数组处理
以0开始,有负下标的使用
0第一个元素,-1最后一个元素,
-len第一个元 素,len-1最后一个元素
取list的元素数量
len(list) #list的长度。实际该方法是调用了此对象的__len__(self)方法。

5.创建连续的list
L = range(1,5) #即 L=[1,2,3,4],不含最后一个元素
L = range(1, 10, 2) #即 L=[1, 3, 5, 7, 9]

6.list的方法
L.append(var) #追加元素
L.insert(index,var)
L.pop(var) #返回最后一个元素,并从list中删除之
L.remove(var) #删除第一次出现的该元素
L.count(var) #该元素在列表中出现的个数
L.index(var) #该元素的位置,无则抛异常
L.extend(list) #追加list,即合并list到L上
L.sort() #排序
L.reverse() #倒序
list 操作符:,+,*,关键字del
a[1:] #片段操作符,用于子list的提取
[1,2]+[3,4] #为[1,2,3,4]。同extend()
[2]*4 #为[2,2,2,2]
del L[1] #删除指定下标的元素
del L[1:3] #删除指定下标范围的元素
list的复制
L1 = L #L1为L的别名,用C来说就是指针地址相同,对L1操作即对L操作。函数参数就是这样传递的
L1 = L[:] #L1为L的克隆,即另一个拷贝。

list comprehension
[ for k in L if ]

代码示例:

\

5.字典

其实与C++中的Map相对应,每一个元素是pair,包含key、value两部分。key是Integer或string类型,value 是任意类型。
键是唯一的,字典只认最后一个赋的键值。

dictionary的方法
D.get(key, 0) #同dict[key],多了个没有则返回缺省值,0。[]没有则抛异常
D.has_key(key) #有该键返回TRUE,否则FALSE
D.keys() #返回字典键的列表
D.values()
D.items()

D.update(dict2) #增加合并字典
D.popitem() #得到一个pair,并从字典中删除它。已空则抛异常
D.clear() #清空字典,同del dict
D.copy() #拷贝字典
D.cmp(dict1,dict2) #比较字典,(优先级为元素个数、键大小、键值大小)
#第一个大返回1,小返回-1,一样返回0

dictionary的复制
dict1 = dict #别名
dict2=dict.copy() #克隆,即另一个拷贝。

代码示例:

\

6.元组

在python中,元组有以下特性

1.任意对象的有序集合,这条没啥说的,数组的同性;

2.通过偏移读取;

3.一旦生成,不可改变;

4.固定长度,支持嵌套

举例来说:

\

7.条件与循环

1.if条件语句

条件语句中最重要也是python中最关键的就是缩进了,python中强制缩进,条件与循环语句有最能体现这一特性》

示例:

\

2.循环

1.while循环和 if 语句类似,也是去检查一个布尔表达式的真假,不一样的是它下面的代码片段不是只被执行一次,而是执行完后再调回到 while 所在的位置,如此重复进行,直到 while 表达式为 False 为止。

注意:

我们尽量少用 while-loop,大部分时候 for-loop 是更好的选择。重复检查你的 while 语句,确定你测试的布尔表达式最终会变成 False 。如果不确定,就在 while-loop 的结尾打印出你要测试的值。看看它的变化。Break用来终止循环,continue跳过本次循环

2.for语句是python中的循环控制语句。可用来遍历某一对象,还具有一个附带的可选的else块,主要用于处理for语句中包含的break语句。如果for循环未被break终止,则执行else块中的语句。break 在需要时终止for循环continue 跳过位于其后的语句,开始下一轮循环。






相关内容

    暂无相关文章

评论关闭