两篇文章掌握Python语法和内置函数功能(第一篇)
来源:互联网 发布:企业数据库视频教程 编辑:程序博客网 时间:2024/06/01 09:59
Overview
Python是一种动态,解释型语言。它的变量、参数、函数或者一些在源码中的方法都不需要类型声明。你并不需要编译时的类型检查,python会在运行时确定所有值的类型和标记运行到的有错误的代码。
字符串
Python字符串像Java一样都是不可变的。当我们写这样一个表达式的时候,例如表达式(‘hello’ + ‘world’),它会新构建一个字符串’hellothere’,而不会在先前的字符串上去做修改。
Python没有++操作符,但是有+=、-=操作符。
Python既可以用双引号也可以用单引号来表示字符串。例如:
- 1
- 2
- 3
- 4
- 1
- 2
- 3
- 4
Python可以用*号来表示很多个重复的字符串。例如:
- 1
- 2
- 1
- 2
Python索引字符串方式:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
注意:当我们截取字符串时,如果单个索引超出字符串可以被索引的范围,Python解释器将会报错。但是如果是一个范围索引(例如上面的[2:6])的话,什么情况下都不会报错,只有可能为空串。
find(‘other’):返回第一次遇到的’other’字符串索引,如果没有发现,则返回-1
- 1
- 2
- 3
- 4
- 5
- 1
- 2
- 3
- 4
- 5
字符串的len(string)方法:返回字符串的长度。注意:不要使用len做为变量名。
字符串的str()方法:把给定的值转换成字符串形式。例如:
- 1
- 2
- 3
- 1
- 2
- 3
下面的s代表一个字符串:
s.lower() – 返回小写的字符串
s.upper() – 返回大写的字符串
s.strip() – 返回去除空格的字符串
s.isalpha() – 如果字符串中至少有一个字符并且所有的字符是按字母表顺序的则返回TRUE,否则FALSE。
s.isdigit() – 如果字符串中至少有一个字符并且所有的字符是数字则返回TRUE,否则FALSE。
s.isspace() – 如果字符串中至少有一个字符并且所有的字符都是由空白字符组成则返回TRUE,否则FALSE。
s.startswith(‘other’) – 如果字符串以’other’串开头,则返回TRUE。
s.endswith(‘other’) – 如果字符串以’other’串结尾,则返回TRUE。
s.replace(‘old’, ‘new’ [, count]) – 把字符串中所有出现的’old’替换成’new’,并把这个新串作为复本要返回,并不改变原字符串的内容。如果指定可选的count参数,那么则替换前count个子串。
split([sep[, maxsplit]]) – 用给定的分割符分割字符串并以list形式返回。有2个特别之处如下:
- 如果字符串中有连续的分割符,则被分割成空串。例如:
s='xl<><>insist' 用s.split('<>') 则拆分成['xl', '', 'insist'] ;但是用s.split('<><>') 则拆分成['xl', 'insist']
- 如果不给参数直接拆分的情况下,则把所有的空白字符做为分割符。例如:
' 1 2 3 '.split() 则拆分成['1', '2', '3']
s.join(list) – 与split()方法相反,它将给定的list中的元素用s连接起来。例如:'---'.join(['aaa', 'bbb', 'ccc']) -> aaa---bbb---ccc
所有关于字符串的方法查看官方文档:http://docs.python.org/library/stdtypes.html#string-methods
列表(lists)
定义一个列表并访问其元素:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
把列表赋值给其它变量:
- 1
- 2
- 3
- 4
- 5
- 1
- 2
- 3
- 4
- 5
迭代列表中的元素:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
Range函数用法:
- 1
- 2
- 3
- 4
- 5
- 1
- 2
- 3
- 4
- 5
列表中的一些常用方法如下:
list.append(elem) – 加元素到列表的末尾。它仅仅是修改列表,并不返回一个新的列表。
list.insert(index, elem) – 把元素插入到给定的位置中
list.extend(list2) – 把list2中的元素加到list的末尾。
list.index(elem) – 返回指定元素的索引,如果不存在这个元素则报错(use “in” to check without a ValueError)
list.remove(elem) – 移除在列表中第一次出现的元素,如果不存在报错。
list.reverse() – 反转列表中的元素
list.pop(index) – 移除并返回给定索引的元素。如果没有指定索引,返回列表中最右边的元素。
排序
sorted(list)函数接收一个list并返回一个排好序的list,并不改变原来的list。例如:
- 1
- 2
- 3
- 1
- 2
- 3
sorted函数可以接受任何可迭代的集合作为参数,不仅仅是list,它也可以定制比较规则通过指定的参数。例如:
- 1
- 2
- 3
- 1
- 2
- 3
用key定制排序
- 1
- 2
- 3
- 1
- 2
- 3
再来一个例子:
- 1
- 2
- 1
- 2
我们也可以定制自己的“key”函数:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
sort()方法改变底层的list返回None
sort()方法必须被list调用,它不能被所有可枚举的集合所调用,但是上面的sorted()方法可以。sort()方法不需要创建一个新的list,因此它为已经在list中的元素做排序比sorted方法更快。
Tuples
Tuples和list一样,除了它们是不可变的和它的长度是固定的。例如:
- 1
- 2
- 3
- 4
- 5
- 1
- 2
- 3
- 4
- 5
为了创建size-1的tuple,单个元素的后面必须跟随一个逗号:
- 1
- 1
为了区分tuple和普通括号中的表达式,所以我们加逗号。
上图中的int类型对象并没有len()函数。
我们也可以按照下面的方式分配tuple:
- 1
- 2
- 3
- 4
- 5
- 1
- 2
- 3
- 4
- 5
一个更加简洁与牛逼的方法玩list
语法为:[ expr for var in list ]
- 1
- 2
- 3
- 4
- 5
- 6
- 1
- 2
- 3
- 4
- 5
- 6
我们也可以加if测试
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
以上内容整理自Google’s Python Class
https://developers.google.com/edu/python/
- 两篇文章掌握Python语法和内置函数功能(第一篇)
- 两篇文章掌握Python语法和内置函数功能(第一篇)
- 两篇文章掌握Python语法和内置函数功能(第二篇)
- 两篇文章掌握Python语法和内置函数功能(第二篇)
- python语法__call__有趣内置函数
- [SICP]基本语法和内置函数
- Python学习笔记(三)函数初识和内置函数
- 自学FreeCAD 第一篇 Python函数
- Python的内置函数和匿名函数
- 第一篇:可重入内置锁
- python中内置函数locals()和gloabls()解析
- Python 内置函数 locals() 和globals()
- Python 内置函数 locals()和 globals()
- Python基础(一、变量和 常用内置函数)
- Python语法第7讲:函数
- Python中几个内置函数和其他
- python学习内置函数和while
- Python内置函数__import__和eval用法
- solr搜索结果按某字段排序
- MyBatis--动态SQL
- 八、Shell数组:shell数组的定义、数组长度
- vue常用UI组件
- cocos2dx-js Shader的使用(高斯模糊)
- 两篇文章掌握Python语法和内置函数功能(第一篇)
- chapter5 Pandas入门
- Vue.js学习随笔
- 关于echart热力图 官网demo展示
- Struts2从一个action转到另一个action的两种方法
- 测试工具JMeter的安装及配置
- 深入解析iOS日志库CocoaLumberjack
- 递推求值
- 软件工程之概述