Python学习笔记 基础语法
来源:互联网 发布:top gear 知乎 编辑:程序博客网 时间:2024/06/04 20:02
基本数据类型
空类型
None类型表示空对象,在Python中提供类似null的语义。当一个函数没有返回值的时候,就会返回None。另外,None对象还可以作为参数的值,表示该参数没有值。
# 空类型none = Noneprint('空类型:', type(none))print('空类型的值:', none)print('----------------------------')
数字类型
Python中的数字类型分为4种:整数、浮点数、布尔量和复数。
整数类型
Python中的整数类型和其他语言中的略有不同,Python2中分为普通整数和长整数,到了Python3,不再区分这两种整数了,只有一种int类型,必要的时候可以扩展到任意位。
对于整数字面值,可以使用0b、0o、0x前缀表示二进制数、八进制数或十六进制数。没有任何前缀的是十进制数。另外,还可以使用bin、oct和hex内置函数将十进制数转换为对应的数制表达形式。
# 可以为任意大的整数binary = 0b1111octal = 0o12hexa = 0xffbiginteger = 1for x in range(1, 101): biginteger *= xprint('整数类型:', type(biginteger))print('二进制数:', binary, ',转换成二进制:', bin(binary))print('八进制数:', octal, ',转换成八进制:', oct(octal))print('十六进制数:', hexa, ',转换成十六进制:', hex(hexa))print('任意大的整数:', biginteger)print('----------------------------')
浮点数类型
Python中只有一种浮点数,就是64位的双精度浮点数,遵从IEEE 754标准。浮点数类型大致相当于C语言中的double类型。
# 浮点数# 浮点数floatnumber = 1.0for x in range(1, 101): floatnumber += 1 / xprint('浮点数类型:', type(floatnumber))print('浮点数:', floatnumber)print('----------------------------')
布尔类型
Python中的布尔类型和其他语言的差不多,只能取真或假两个值。
# 布尔值booltrue = Trueboolfalse = Falseprint('布尔值类型:', type(boolfalse))print('布尔值:', booltrue, boolfalse)print('----------------------------')
复数类型
Python中还内置了复数类型,内部有一对浮点数,分别表示实部和虚部。
# 复数complex1 = 1 + 2jcomplex2 = 2 + 3jprint('复数类型:', type(complex1))print('复数:', complex1 + complex2)print('复数{0}的实部:{1},虚部是:{2}'.format(complex1, complex1.real, complex1.imag))print('{0}的共轭复数是:{1}'.format(complex1, complex1.conjugate()))print('----------------------------')
序列类型
序列类型共有的操作
所有的序列都支持利用s[i]
方式通过索引查询对应的元素。还可以使用切片操作获取一个切片。切片操作允许返回一个较小的序列,用:
来分隔切片的上下范围。当其中一个范围没有指定的时候,会默认扩展到序列的端点。当所给的范围超出序列的原有范围时,不会发生错误,而是会包括那一方向的所有元素。
>>> t=(1,2,4,5,6)>>>> t[3]5>>> t(1, 2, 4, 5, 6)>>> t[3]5>>> t[:3](1, 2, 4)>>> t[3:](5, 6)>>> t[-1]6>>> t[-3:-1](4, 5)>>>
当序列是可变序列的时候,还可以对索引引用的值或切片进行赋值和删除操作。
字符串
Python只支持字符串类型,不支持单个字符,单个字符会被看做是长度为1的字符串。Python2中有两种类型的字符串:ascii类型的和Unicode类型的。而在Python3中将这两种字符串统一合并成了一种Unicode字符串。
字符串既可以使用单引号来包括,也可以使用双引号来包括。连续的三个单引号或双引号可以包括跨行字符串。如果在一个字符串前面添加字母r则表示这是一个原始字符串,其中的任何转义字符例如\n
都不会被转义,而是以原样输出。字符串是一个不可变对象,一旦创建就不能在对其修改,要做修改都会创建一个新的字符串对象。字符串含有大量方法支持各种操作。
# 字符串stringwithsinglequotes = '12345'stringwithdoublequotes = "12345"multilineString = '''这是第一行这是第二行'''rawString = r"其中的换行会原样输出\n"string = "1234" + "456"print('字符串类型:', type(stringwithdoublequotes))print('字符串:\n', stringwithsinglequotes)print(stringwithdoublequotes)print(multilineString)print(rawString)print('----------------------------')
列表
列表用来表示一组可以随时增加、删除、修改的对象。由于Python是动态语言,因此列表可以容纳任意类型的对象。列表含有大量的方法用来操作所容纳的对象。
创建一个空列表使用[]
即可,要创建一个含有数据的列表,只要把数据放在[]
中,以,
隔开即可。可以使用内置函数list将一个对象或者序列转变成列表,如果参数已经是一个列表,那么则会创建这个列表的一个引用。列表有各种方法可以操作它所包含的数据。
# 列表list1 = [1, 2, 4, 5, 6]print('列表类型:', type(list1))print('初始列表:', list1)list1.append(7)print('增加了一个元素:', list1)list1.insert(2, 3)print('插入了一个元素:', list1)print('前五个元素:', list1[:5])print('后五个元素:', list1[-5:])list1 = []print('空列表:', list1)print('----------------------------')
元组
元组表示一个不可变的列表,常用来传递多个参数。元组是不可变的,一旦创建就不能修改像列表一样修改其中的元素。但是如果元素是一个可变的对象,则可以修改该元素内部的状态,但是元素本身不能被修改。
创建一个元组,使用小括号将要保存的对象括起来即可,使用,
分隔。元组创建好了之后,可以再将其中的值重新赋给不同的对象。需要注意的是,空元组使用一对空的小括号创建;而只有一个元素的元组则需要在小括号之中添加一个逗号。
# 元组a = 10b = 6tuple1 = (a // b, a % b)print('元组类型:', type(tuple1))print('元组的元素是:', tuple1)left, remain = tuple1tuple1 = ()print('空元组:', tuple1)tuple1 = (1,)print('只有一个元素的元组:', tuple1)print('----------------------------')
集合类型
集合表示一组没有重复的对象。如果向集合中添加多个重复的元素,多余的就会被忽略。Python中有两个集合,一个是set,另一个是frozenset,它们之间的区别是:frozenset是一个不可变的集合,一旦创建好之后就无法改变其中的值。
创建集合需要使用set或者frozenset函数,向其中传递要创建的值序列。set创建好之后可以使用add方法向其中添加元素。而frozenset则不行。集合支持求交集、并集、差集等的方法。
# 集合set1 = set()print('集合类型:', type(set1))print('空集合:', set1)set1.add('1')set1.add('2')set1.add('3')print('集合1的值:', set1)set2 = frozenset('65043983')print('集合2的值:', set2)print('交集:', set1 & set2)print('并集:', set1 | set2)print('差集:', set1 - set2)print('对称差集:', set1 ^ set2)print('----------------------------')
字典
Python内置了一个字典对象dict,提供键值存储,其中键必须是一个不可变对象且键不能重复。
创建一个空字典使用{}
,或者使用:
分隔的键值对来填充字典。要访问字典中的元素,需要使用dictionary[index]
来由键查询值。还可以使用键 in 字典
的方式来查询在字典中是否存在指定的键。字典还有其他大量的方法对键值对进行操作。
# 字典dictionany = {}print('字典类型:', type(dictionany))print('空字典:', dictionany)dictionany = {4: 3, 6: 7}print('初始化一个字典:', dictionany)dictionany[1] = 1dictionany[2] = 3print('字典的内容:', dictionany)del dictionany[6]print('删除了一对元素的字典:', dictionany)print('{0}在不在字典中:'.format(6), 6 in dictionany)print('遍历字典:')for key in dictionany.keys(): print('dictionary[{0}]={1}'.format(key, dictionany[key]), end=';')print()print('----------------------------')
运算符
数字运算
Python中的运算符和其他语言的没有太大差别,同样遵从运算符优先级。注意**
表示乘方运算。/
默认是浮点数除法,//
才是整除。
# 数字运算integer1 = 100integer2 = 33float1 = 4.5print('加减乘:({0}+1-3)*{1}={2}'.format(float1, integer1, (float1 + 1 - 3) * integer1))print('浮点数除法:{0}/{1}={2}'.format(integer1, integer2, integer1 / integer2))print('整数除法:{0}//{1}={2}'.format(integer1, integer2, integer1 // integer2))print('乘方运算:{0}**{1}={2}'.format(2, 7, 2 ** 7))print('----------------------------')
- Python基础语法学习笔记
- Python学习笔记 基础语法
- Python学习笔记:语法基础
- Python基础语法(学习笔记)
- Python学习笔记(一)基础语法
- Python学习笔记(2):语法基础
- Python学习笔记(1):语法基础
- Python学习笔记——语法基础
- Python学习笔记1-基础语法
- Python学习笔记 —— 基础语法
- Python 学习笔记(基础语法)
- Python学习笔记三:基础语法
- python 学习笔记之基础语法
- Python学习笔记(一) 之 基础语法
- 【学习笔记】python的基础语法
- python学习笔记(基础语法)
- Python学习笔记(一)-- 基础语法
- Python学习笔记:语法基础2
- [Python标准库]heapq——堆排序算法
- ./configure 命令详解
- 安装JDK过程中的一些注意事项
- 数据结构之图(邻接表存储,DFS和BFS遍历)
- iOS中单例模式的创建
- Python学习笔记 基础语法
- ITOO4.1之LocalStorage 本地存储
- 大数据的启蒙
- php rewrite模式
- 1193: [HNOI2006]马步距离
- Qt学习之路(10):自定义事件与事件控制的5大层次
- 什么是HTTP?Ping命令是什么?
- 线性堆栈
- 浅谈ThinkPhp里的utf8格式字符串截取