运算符

设定:a=10,b=20 。

  1. 算数运算

2、比较运算

3、赋值运算

4、逻辑运算

5、成员运算

基本数据类型

1、数字

int(整型)

在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1。

在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1。

以下引用:http://www.cnblogs.com/linjiqin/p/3608541.html

  1. 数字类型转换:
  2.  
  3. int(x [,base]) 将x转换为一个整数
  4. float(x ) 将x转换到一个浮点数
  5. complex(real [,imag]) 创建一个复数
  6. str(x) 将对象x转换为字符串
  7. repr(x) 将对象x转换为表达式字符串
  8. eval(str) 用来计算在字符串中的有效Python表达式,并返回一个对象
  9. tuple(s) 将序列s转换为一个元组
  10. list(s) 将序列s转换为一个列表
  11. chr(x) 将一个整数转换为一个字符
  12. unichr(x) 将一个整数转换为Unicode字符
  13. ord(x) 将一个字符转换为它的整数值
  14. hex(x) 将一个整数转换为一个十六进制字符串
  15. oct(x) 将一个整数转换为一个八进制字符串
  16.  
  17. 数字函数转换:
  18.  
  19. abs(x) 返回数字的绝对值,如abs(-10) 返回 10
  20. ceil(x) 返回数字的上入整数,如math.ceil(4.1) 返回 5
  21. cmp(x, y) 如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1
  22. exp(x) 返回e的x次幂(ex),如math.exp(1) 返回2.718281828459045
  23. fabs(x) 返回数字的绝对值,如math.fabs(-10) 返回10.0
  24. floor(x) 返回数字的下舍整数,如math.floor(4.9)返回 4
  25. log(x) 如math.log(math.e)返回1.0,math.log(100,10)返回2.0
  26. log10(x) 返回以10为基数的x的对数,如math.log10(100)返回 2.0
  27. max(x1, x2,...) 返回给定参数的最大值,参数可以为序列。
  28. min(x1, x2,...) 返回给定参数的最小值,参数可以为序列。
  29. modf(x) 返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示。
  30. pow(x, y) x**y 运算后的值。
  31. round(x [,n]) 返回浮点数x的四舍五入值,如给出n值,则代表舍入到小数点后的位数。
  32. sqrt(x) 返回数字x的平方根,数字可以为负数,返回类型为实数,如math.sqrt(4)返回 2+0j

2、布尔值

真或假

1 或0

3、字符串

字符串常用功能:

  • 移除空白
  • 分割
  • 长度
  • 索引
  • 切片
  1. str.strip().lstrip().rstrip(',') #去空格及特殊符号
  2. len(str) #获取字符串长度
  3. str.lower() #将字符串转换为小写
  4. str.upper() #将字符串转换为大写
  5. str.swapcase() #字符串大小写互换
  6. str.capitalize() #字符串首字母大写
  7. strncat(str_1,str_2,n) #str_1末尾添加指定长度的字符串str_2
  8. strncmp(str_1,str_2,n) #字符串指定长度比较
  9. strncpy(str_1,str_2,n) #复制指定长度的字符串str_2到str_1
  10. strnset(str_1,str_2,n) #将字符串str_1前n个字符替换为指定的字符str_2
  11. strrev(str) #翻转字符串
  12. strtok(str_1,str_2) #以str_2分割str_1
  13.  
  14. 字符串截取:
  15. str = '0123456789′
  16. str[0:3] #截取第一位到第三位的字符
  17. str[:] #截取字符串的全部字符
  18. str[6:] #截取第七个字符到结尾
  19. str[:-3] #截取从头开始到倒数第三个字符之前
  20. str[2] #截取第三个字符
  21. str[-1] #截取倒数第一个字符
  22. str[::-1] #创造一个与原字符串顺序相反的字符串
  23. str[-3:-1] #截取倒数第三位与倒数第一位之前的字符
  24. str[-3:] #截取倒数第三位到结尾
  25. str[:-5:-3] #逆序截取
  26.  
  27. 字符串在输出时的对齐方式:
  28. str.ljust(width,[fillchar]) #输出width个字符,str左对齐,不足部分用fillchar填充,默认为空格
  29. str.rjust(width,[fillchar]) #右对齐
  30. str.center(width,[fillchar]) #中间对齐
  31. str.zfill(width) #把str变成width长,并在右对齐,不足部分用0补足
  32.  
  33. 字符串中的搜索与替换:
  34. str.find(substr,[start,[end]]) #返回str中出现substr的第一个字母的标号,如果str中没有则返回-1。start和end作用相当于在str[start:end]中搜索
  35. str.index(substr,[start,[end]]) #与find()相同,只是在str中没有时,会返回一个运行时错误
  36. str.rfind(substr,[start,[end]]) #返回str中最后出现的substr的第一个字母的标号,如果str中没有则返回-1。
  37. str.rindex(substr,[start,[end]]) #同上推理
  38. str.count(substr,[start,[end]]) #计算substr在str中出现的次数
  39. str.replace(oldstr,newstr,[count]) #把str中的oldstr替换为newstr,count为替换次数。
  40. str.strip([chars]) #把str中前后chars中有的字符全部去掉,可以理解为把str前后chars替换为none
  41. str.lstrip([chars]) #替换str中chars的左边部分
  42. str.rstrip([chars]) #替换str中chars的右边部分
  43. str.expandtabs([tabsize]) #把str中的tab字符替换为空格,每个tab替换为tabsize个空格,默认是8个
  44.  
  45. 字符串的分割与组合:
  46. str.split([sep,[maxsplit]]) #以sep为分隔符,把str分成一个list,maxsplit表示分割的次数。默认的分隔符为空白字符
  47. str.join(seq) #把seq代表的序列——字符串序列,用str连接起来
  48.  
  49. 字符串的测试、判断,返回bool值:
  50. str.startswith(prefix[,start[,end]]) #是否以prefix开头
  51. str.endswith(suffix[,start[,end]]) #是否以suffix结尾
  52. str.isalnum() #判断是否全是字母和数字,并且至少一个字符
  53. str.isdigit() #判断是否全是数字,并且至少一个字符
  54. str.isspace() #判断是否全是空白字符,并且至少一个字符
  55. str.islower() #判断str中的字母是否全是小写
  56. str.isupper() #判断str中的字母是否全是大写
  57. str.istitle() #判断str的首字母是否大写

4、列表

list是处理一组有序项目的数据结构,即可以在一个列表中存储一个序列的项目。列表中的项目包括在方括号中,一旦创建了一个列表,就可以添加、删除、修改,或者搜索列表中的项目。列表是可变的数据类型,即数据类型是可以被改变的,并且列表是可以嵌套的。

创建列表:

  1. name_list = ['golden','anle','sevel','dickc']
  2. name_list = list([name_list = ['golden','anle','sevel','dickc'])

基本操作:

  • 索引
  • 切片
  • 追加
  • 删除
  • 长度
  • 切片
  • 循环
  • 包含
  1. list[0] #取出第一个元素
  2. list[-1] #取出最后一个元素
  3. list[:] 或 list[:len(list)] #取出所有列表元素
  4. list[0:n] #取出从第0号到第n-1号元素
  5. list[0] = 'xx' #修改第0号的元素值
  6. del list[0] #删除第0号元素
  7. if 'xx' in list: #判断元素'xx'是否在列表
  8. len(list) #获取列表元素的个数
  9. max(list) #取出列表中元素的最大值
  10. min(list) #取出列表中元素的最小值
  11. list.append('xx') #列表中添加元素'xx'
  12. list.insert(0,'xx') #在列表第0号位置上插入元素'xx'
  13. list.index('xx') #返回元素'xx'在列表中第一次出现的索引值
  14. list.count('xx') #返回元素'xx'在列表中的个数
  15. list.remove('xx') #移除第一次出现的元素'xx'
  16. list.pop() #移除元素,默认从最后移除,返回该元素值,括号中可加入元素索引值来移除
  17. list.sort() #排序
  18. list.reverse() #反向
  19. list.extend(seq) #在列表末尾一次性追加另一个序列中的多个值

5、元组

元组与列表十分相似,不过元组是不可变的,即不能修改元组。元组通过圆括号中用逗号分隔的项目定义。元组通常用在使语句或用户定义的函数能够安全的采用一组值的时候,即被使用元组的值不会改变。元组可以嵌套。

创建元组:

  1. ages = (12,13,14,15,16)
  2. ages = tuple((12,13,14,15,16))

基本操作:

  • 索引
  • 切片
  • 循环
  • 长度
  • 包含

6、字典(无序)

字典将键和值联系在一起,键必须是唯一的。键值对在字典中的标记方式:d = {key1:value1,key2:value2,key3,value3…}。键/值对用冒号分割,而各个键值对用逗号分隔,所有这些都包括在花括号里。字典中的键/值对是无序的。

创建字典:

  1. person = {"name":"wang","age":22}
  2. person = {"name":"wang","age":22}

常用操作:

  • 索引
  • 新增
  • 删除
  • 键、值、键值对
  • 循环
  • 长度
  1. person = {"name":"wang","age":22}
  2. person = {"name":"wang","age":22}
  3.  
  4. person.keys() #返回包含字典所有key的列表
  5. person.values() #返回包含字典所有value的列表
  6. person.items() #返回所有键值的元组的列表
  7. person.clear() #删除字典中的所有项或元素
  8. person.copy #浅拷贝
  9. person.fromkeys(seq,val=None) #创建并返回一个新字典,以seq中的元素做该字典的键,val做该字典中所有键对应的初始值(默认为None)
  10. person.get(key,default=None) #返回字典中key对应的值,若key不存在,则返回default的值(default默认为None)
  11. person.update(person2) #将字典person2的键值对添加到字典person中
  12. for key in person.keys():print(key) #遍历字典的key(键)
  13. for
    value
    in person.values():print(value) #遍历字典的value(值)
  14. for item in person.items():print(item) #遍历字典的项(元素)
  15. for item,value
    in person.items():print('key=%s,value=%s'%(item,value)) #遍历字典的key-value
  16. person[new_key] #添加一个数据项(新元素)或键值对
  17. person[old_key] #更新一个数据项(元素)或键值对
  18. del person[key] #删除键key的项,
  19. del person #删除整个字典
  20. person.pop(key) #删除键key的项并返回key对应的value值

7、其他

1、for循环

用户按照顺序循环可迭代对象中的内容。

  1. list = [11,22,33,44]
  2. for item in list:
  3.    print(item)

2、enumrate

为可迭代的对象添加序号。

  1. list = [11,22,33]
  2. for k,v in enumerate(list,1):
  3.    print(k,v)

3、range和xrange

指定范围,生成指定的数字。

  1. range(1,10) #[1, 2, 3, 4, 5, 6, 7, 8, 9]
  2.  
  3. rang(1,10,2) #[1, 3, 5, 7, 9]
  4.  
  5. range(30,0,-2) #[30, 28, 26, 24, 22, 20, 18, 16, 14, 12, 10, 8, 6, 4, 2]
  6.  
  7. 用法:
  8. for i in range(30,0,-2):
  9.    print(i)

xrange用法与range完全相同,不同的是生成的不是一个list对象。在生成很大的数字序列的时候,用xrange会比range性能优秀很多,因为xrange不需要一上来就开辟一块很大的内存空间。在做循环的时候,推荐使用xrange,除非一定要返回一个列表。

跟着老男孩教育学Python开发【第二篇】:Python基本数据类型的更多相关文章

  1. Python开发 第一篇 python的前世今生

    Python前世今生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC ...

  2. python开发第二篇 :python基础

    python基础a.Python基础      -基础1. 第一句python       -python后缀名可以任意?     -导入模块时如果不是.py文件,以后的文件后缀名是.py.2.两种 ...

  3. python开发[第二篇]------str的7个必须掌握的方法以及五个常用方法

    在Python中 基本数据类型有 str int boolean list dict tuple等 其中str的相关方法有30多个 但是常用的就以下7个 join  # split # find # ...

  4. Python开发第二篇

    运算符 1.算术运算符 % 取余运算符,返回余数 ** 幂运算符 //返回商的整数部分 2.逻辑运算符 and  与运算符 a and b 如果a为False是,表达式为False,如果a为True返 ...

  5. 《python开发技术详解》|百度网盘免费下载|Python开发入门篇

    <python开发技术详解>|百度网盘免费下载|Python开发入门篇 提取码:2sby  内容简介 Python是目前最流行的动态脚本语言之一.本书共27章,由浅入深.全面系统地介绍了利 ...

  6. 第二篇 python进阶

    目录 第二篇 python进阶 一 数字类型内置方法 二 字符串类型内置方法 三 列表类型内置方法(list) 四 元组类型内置方法(tuple) 五 字典内置方法 六 集合类型内置方法(self) ...

  7. Python人工智能第二篇:人脸检测和图像识别

    Python人工智能第二篇:人脸检测和图像识别 人脸检测 详细内容请看技术文档:https://ai.baidu.com/docs#/Face-Python-SDK/top from aip impo ...

  8. [转帖]虚拟内存探究 -- 第二篇:Python 字节

    虚拟内存探究 -- 第二篇:Python 字节 http://blog.coderhuo.tech/2017/10/15/Virtual_Memory_python_bytes/ 是真看不懂哦     ...

  9. visual studio 2015 搭建python开发环境,python入门到精通[三]

    在上一篇博客Windows搭建python开发环境,python入门到精通[一]很多园友提到希望使用visual studio 2013/visual studio 2015 python做demo, ...

  10. iOS开发——高级技术精选&底层开发之越狱开发第二篇

    底层开发之越狱开发第二篇 今天项目中要用到检查iPhone是否越狱的方法. Umeng统计的Mobclick.h里面已经包含了越狱检测的代码,可以直接使用 /*方法名: * isJailbroken ...

随机推荐

  1. 百度 flash html5自切换 多文件异步上传控件webuploader基本用法

    双核浏览器下在chrome内核中使用uploadify总有302问题,也不知道如何修复,之所以喜欢360浏览器是因为帮客户控制渲染内核: 若页面需默认用极速核,增加标签:<meta name=& ...

  2. Base64编码

    Base64编码 写在前面 今天在做一个Android app时遇到了一个问题:Android端采用ASE对称加密的数据在JavaWeb(jre1.8.0_7)后台解密时,居然解密失败了!经过测试后发 ...

  3. Matlab slice方法和包络法绘制三维立体图

    前言:在地球物理勘探,流体空间分布等多种场景中,定位空间点P(x,y,x)的物理属性值Q,并绘制三维空间分布图,对我们洞察空间场景有十分重要的意义. 1. 三维立体图的基本要件: 全空间网格化 网格节 ...

  4. [APUE]系统数据文件与信息

    一.口令文件 UNIX口令文件包含下表中的各个字段,这些字段包含在 由于历史原因,口令文件是/bin/passwd,而且是一个文本文件,每一行都包括了上表中的七个字段,字段之间用":&quo ...

  5. Android 剪贴板详解

    版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 源码:AndroidDemo/Clipboard 如本文有助于你理解 Android 剪贴板,不妨给我一个 Star.对于码农而言, ...

  6. Linux碎碎念

    在学习Linux过程中,有许多有用的小技巧.如果放在纸质的笔记本上,平时查阅会相当不方便.现在以一种“碎碎念”的方式,汇集整理在此,目前还不是很多,但随着学习.工作的深入,后续会陆陆续续添加更多的小技 ...

  7. 趣说游戏AI开发:曼哈顿街角的A*算法

    0x00 前言 请叫我标题党!请叫我标题党!请叫我标题党!因为下面的文字既不发生在美国曼哈顿,也不是一个讲述美国梦的故事.相反,这可能只是一篇没有那么枯燥的关于算法的文章.A星算法,这个在游戏寻路开发 ...

  8. MongoDB系列(二):C#应用

    前言 上一篇文章<MongoDB系列(一):简介及安装>已经介绍了MongoDB以及其在window环境下的安装,这篇文章主要讲讲如何用C#来与MongoDB进行通讯.再次强调一下,我使用 ...

  9. PHP获取客户端IP

    /** * 获取客户端IP */ function getClientIp() { $ip = 'unknown'; $unknown = 'unknown'; if (isset($_SERVER[ ...

  10. Microsoft SQL Server中的事务与并发详解

    本篇索引: 1.事务 2.锁定和阻塞 3.隔离级别 4.死锁 一.事务 1.1 事务的概念 事务是作为单个工作单元而执行的一系列操作,比如查询和修改数据等. 事务是数据库并发控制的基本单位,一条或者一 ...