您的位置:首页 > 编程语言 > Python开发

Python学习笔记(二):语句、数据类型(快速入门篇)

2015-04-18 21:17 936 查看
以下是入门python看自强学堂的笔记,网址为http://www.ziqiangxuetang.com/python/python-tutorial.html

同时,补充阅读有http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000

Head First Python、Python基础教程

语句(部分)

条件语句

由于 python 并不支持 switch 语句,所以多个条件判断,只能用 elif 来实现。

if 判断条件:
    执行语句……
else:
    执行语句……


当判断条件为多个值是,可以使用以下形式:

if 判断条件1:
    执行语句1……
elif 判断条件2:
    执行语句2……
elif 判断条件3:
    执行语句3……
else:
    执行语句4……


循环语句

while 语句时还有另外两个重要的命令 continue,break 来跳过循环,continue 用于跳过该次循环,break 则是用于退出循环,此外”判断条件”还可以是个常值,表示循环必定成立。

while 判断条件:
    执行语句……


while…else语句,else 中的语句会在循环正常执行完(即 while 不是通过 break 跳出而中断的)的情况下执行。(for…else语句类似)

count = 0****
while count < 5:
   print count, " is  less than 5"
   count = count + 1
else:
   print count, " is not less than 5"


for循环可以遍历任何序列的项目,如一个列表或者一个字符串

for iterating_var in sequence:
   statements(s)


数据类型

数字

数字数据类型用于存储数值。

其是不允许改变的,这就意味着如果改变数字数据类型的值,将重新分配内存空间。

var1 = 1
var2 = 10
del var1[,var2[,var3[....,varN]]]]


Python 支持四种不同的数值类型

整型(Int) 通常被称为是整型或整数,是正或负整数,不带小数点。

长整型(long integers) 无限大小的整数,整数最后是一个大写或小写的L。

浮点型(floating point real values) 浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示(2.5e2 = 2.5 x 102 = 250)

复数( (complex numbers)) 复数的虚部以字母J 或 j结尾 。如:2+3i

数字类型转换

repr(x )        将对象 x 转换为表达式字符串  
eval(str )      用来计算在字符串中的有效Python表达式,并返回一个对象  
tuple(s )       将序列 s 转换为一个元组  
unichr(x )      将一个整数转换为Unicode字符  
ord(x )         将一个字符转换为它的整数值


数学函数(import math)

ceil(x)         返回数字的上入整数
cmp(x, y)       如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1
floor(x)        返回数字的下舍整数
modf(x)         返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示。
round(x [,n])   返回浮点数x的四舍五入值


随机数函数(import random)

choice(seq)     从序列的元素中随机挑选一个元素
randrange ([start,] stop [,step])   从指定范围内,按指定基数递增的集合中获取一个随机数,基数缺省值为1
random()        随机生成下一个实数,它在[0,1)范围内。
seed([x])       改变随机数生成器的种子seed。如果你不了解其原理,你不必特别去设定seed,Python会帮你选择seed。
shuffle(lst)    将序列的所有元素随机排序
uniform(x, y)   随机生成下一个实数,它在[x,y]范围内。


三角函数(个人使用较少,略,import math)

字符串

可以使用引号来创建字符串

var1 = 'Hello World!'
var2 = "Python Programming"


访问字符串中的值

Python不支持单字符类型,单字符也在Python也是作为一个字符串使用。

Python访问子字符串,可以使用方括号来截取字符串

字符串更新

可以对已存在的字符串进行修改,并赋值给另一个变量,如下:

var1 = 'Hello World!'
print "Updated String :- ", var1[:6] + 'Python'


字符串运算符

+   字符串连接
*   重复输出字符串
[]      通过索引获取字符串中字符
[ : ]   截取字符串中的一部分
in      成员运算符 - 如果字符串中包含给定的字符返回 True
not in  成员运算符 - 如果字符串中不包含给定的字符返回 True
r/R     原始字符串 - 原始字符串:所有的字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符。 
        原始字符串除在字符串的第一个引号前加上字母"r"(可以大小写)以外,与普通字符串有着几乎完全相同的语法
%       格式字符串


字符串格式化(同C中类似)

print "My name is %s and weight is %d kg!" % ('Zara', 21)


Unicode 字符串

u'Hello World !'


字符串内建函数(部分与C++类似,在此不详细记录,可自行查找)

http://www.ziqiangxuetang.com/python/python-strings.html

列表(List)[]

序列都可以进行的操作包括索引,切片,加,乘,检查成员。

此外,Python已经内置确定序列的长度以及确定最大和最小的元素的方法。

列表的数据项不需要具有相同的类型。创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。

list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5 ];
list3 = ["a", "b", "c", "d"];


删除列表元素(del)

访问、更新、操作符、截取(同字符串)

方法

list.append(obj)        在列表末尾添加新的对象
list.count(obj)         统计某个元素在列表中出现的次数
list.extend(seq)        在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
list.index(obj)         从列表中找出某个值第一个匹配项的索引位置
list.insert(index, obj) 将对象插入列表
list.pop([index])       移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
list.remove(obj)        移除列表中某个值的第一个匹配项
list.reverse()          反向列表中元素
list.sort([func])       对原列表进行排序


元组()

与列表类似,不同之处在于元组的元素不能修改。

元组使用小括号,列表使用方括号。

元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。

tup1 = ('physics', 'chemistry', 1997, 2000);
tup2 = (1, 2, 3, 4, 5 );
tup3 = "a", "b", "c", "d";
tup4 = ();      #创建空元组
tup5 = (50,);   #元组中只包含一个元素时,需要在元素后面添加逗号


修改元组(拼接+)

元组中的元素值是不允许修改的,但我们可以对元组进行连接组合(+)

删除元组(del删除所有)

元组中的元素值是不允许删除的,但我们可以使用del语句来删除整个元组

无关闭分隔符

任意无符号的对象,以逗号隔开,默认为元组

print 'abc', -4.24e93, 18+6.6j, 'xyz';
x, y = 1, 2;
print "Value of x , y : ", x,y;


内置函数

cmp(tuple1, tuple2)     比较两个元组元素。
len(tuple)              计算元组元素个数。
max(tuple)              返回元组中元素最大值。
min(tuple)              返回元组中元素最小值。
tuple(seq)              将列表转换为元组。


字典{:,}

字典是另一种可变容器模型,且可存储任意类型对象,如其他容器模型。

字典由键和对应值成对组成。字典也被称作关联数组或哈希表。

每个键与值用冒号隔开(:),每对用逗号,每对用逗号分割,整体放在花括号中({})。

键必须独一无二,但值则不必。

值可以取任何数据类型,但必须是不可变的,如字符串,数或元组。

dict = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'}
dict1 = { 'abc': 456 };
dict2 = { 'abc': 123, 98.6: 37 };


字典键的特性

字典值可以没有限制地取任何python对象,既可以是标准的对象,也可以是用户定义的,但键不行。

不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住。

键必须不可变,所以可以用数,字符串或元组充当,所以用列表就不行。

内置函数

cmp(dict1, dict2)   比较两个字典元素。
len(dict)           计算字典元素个数,即键的总数。
str(dict)           输出字典可打印的字符串表示。
type(variable)      返回输入的变量类型,如果变量是字典就返回字典类型。
radiansdict.clear() 删除字典内所有元素
radiansdict.copy()  返回一个字典的浅复制
radiansdict.fromkeys(seq[, value])  创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值
radiansdict.get(key, default=None)  返回指定键的值,如果值不在字典中返回default值
radiansdict.has_key(key)            如果键在字典dict里返回true,否则返回false
radiansdict.items() 以列表返回可遍历的(键, 值) 元组数组
radiansdict.keys()  以列表返回一个字典所有的键
radiansdict.setdefault(key, default=None)   和get()类似, 但如果键不已经存在于字典中,将会添加键并将值设为default
radiansdict.update(dict2)           把字典dict2的键/值对更新到dict里
radiansdict.values()                以列表返回字典中的所有值
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: