PY的交换值的方法

x.y = y.x

PY既具有动态脚本的特性,又有面向对象的特性

PY的缺点:

  1. 编译型的语言(C++,C):通过编译器进行编译成机器码,越接近底层,开发效率低

解释型代码:PY和JS 通过解释器进行解释,相对于编译型的慢

基本的数据类型

Number:数字 整数int(没有short int long的区分) 浮点数float(py中没有单精度和双精度区分)

Bool型:false和true型

2/2=1.0在py中得到的是浮点型的

2//2 是整除的形式 比如1//2就得0

0b是py中的二进制识别符号,bin()是转换到二进制的方法

0o 是py中的八进制识别符号

0x 是16进制

转十进制的方法是int(0b11)

转十六    hex()

转八进制 oct()

bool(0)   为false 数字类里仅有这个为false

单引号和双引号都可以表示字符串

为啥里面用两种的引号,就是保证能够识别中间的文字符号

转义字符\r回车

要把一个字符转化成文本 即加一个\

一个起点一个终点得到一个字符串 用冒号来做

原始字符串的用法

列表的基本操作和字符串的是一致的

元组的定义tuple (n1,n2,n3)

元组的访问  (n1,n2,n3)[n] 返回的是元素

(n1,n2,n3)[n,m]返回的元组

元组与列表的相同点

1)元素可以时不同的数据类型

2)访问方式相同

3)都可以进行加法和乘法

>>> (1,'-1',True)[0] 1

>>> (1,'-1',True)[0:2] (1, '-1')

>>> (1,'-1',True)+(8,'hi') (1, '-1', True, 8, 'hi')

单一元组是元组内部的元素的本身的类型

str,list,tuple都可视为序列

str list tuple都是序列(python中组的概念)

通用:

截取单个字符(序列中每个元素都会被分配一个序号)

切片 [n:m]或者[n:m:b]从第n+1个到m个,中间隔b-1个字符

验证序列中是否有某个元素,a (not) in 序列 => a是否不在列表中,返回True/False

len(序列) 判断序列中的元素个数

max(序列) 判断序列中的最大值

min(序列) 判断序列中的最小值

ord( ) 查看 ascll码

集合的无序性{1,2,3}(0)是错误的,因为是无序的

集合:{1,2,3} 无序性 不重复性 len({1,2,3}) 得到集合的长度 判断元素是否存在: 1 in {1,2,3} 集合与集合之间的运算: 差集:{1,2,3,4} - {1,2} 得到{3,4} 交集:{1,2,3,4} & {1,2} 得到{1,2} 合集:{1,2} | {2,3,4} 得到{1,2,3,4} 定义一个空的集合: type({}) 得到<class 'dict'> type(set()) 得到<class 'set'>

字典 dict

一个字典可以由很多key和value,集合类型(set),不是序列

用花括号定义 {key1:value1, key2:value2...}

字典也是无序的

通过key来访问

字典通过key来访问value => { }[key]

字典的key不能重复,重复不会报错,但是会覆盖之前重复的key对应的value

字典的key必须是不可变的类型:int、str、元组tuple(列表list、集合set不可以)

字典的value可以是任意类型,没有特别限制:str、int、float、list、set、dict等

空的字典{ }

Py的切片

其含义就是从操作对象中取出一部分的概念

小结PY的数据类型

变量:A =[1,2,3,4]   变量名称的可读性要强

变量的命名规则

1.变量不能以数字开头。

2.变量名可以是数字,字母,下划线组成的字符

3.不可以是python中的保留关键字

3.python区分大小写,A,a它们不是一同个的变量

列表的可变和元组的不可变

列表值可变  但在内存地址中的位置不变

元组值不可变

a=[1,2,3]

c=(1,2,3)

a.append(4)=[1,2,3,4]此函数用于在末尾追加元素

c.append(4)追加元素    报错

能用tuple就用元组 保证了代码不会被修改   最好不用列表list

a=(1,2,3,[1,['a','b','c'],4])

a[3]=>[1,2,4]

a[3][2]=>4

a[3][1][1]=>'b'   可以实现多维嵌套表达

如果对元组中某个元素进行赋值

eg:

a=(1,2,3,[1,2,4])

a[2]='3'     报错

a[3][2]='4'  可行(改变元组中的列表是可行的)

Python赋值运算符:(意义先做运算后赋值,重点是“赋值”)

=       c = a + b 将 a + b 的运算结果赋值为 c

+=     c += a 等效于 c = c + a

-=      c -= a 等效于 c = c - a

*=      c *= a 等效于 c = c * a

/=      c /= a 等效于 c = c / a

%=     c %= a 等效于 c = c % a

**=   c **= a 等效于 c = c ** a

//=   c //= a 等效于 c = c // a

bool类型是Number类型的一种

b=1

b+=b>=1

print(b)

2

print(b>=1)

True

b+=True

b=b+True

int(True)

1

print(b)

4

运算符有优先级

比较单个字符时'a','b',比较的是字符对应的Ascll码,可以通过ord()函数进行查看

比较字符串‘abc’、‘abd’,比较字符串中的每一个字母单独作比较,不可以通过ord()函数查看

字符串、列表、元组都可以进行比较,也是每个元素单独一次进行比较,相同则比较下一位,不同则较大的元素所在的数据大(1,2,3)<(1,3,2)True

逻辑运算符

And是且

Or是或

Not是非

成员运算符(in、not in)

是判断一个元素是否在一组元素里

>>> a=1

>>> a in [1,2,3,4,5]

True

>>> b=6

>>> b not in [1,2,3,4,5]

True

字典(dict)的成员运算符,只比较key的值而不是value的值。

>>> b='a'

>>> b in {'s':1}

False

>>> b=1

>>> b in {'s':1}

False

>>> b='s'

>>> b in {'s':1}

True

is与==区别:

关系运算符比较的是两个变量值是否想的。而身份运算符比较的是两个变量的身份是否相等。</pre>

如何判断变量的值、身份与类型

1、对象的三个特征:值value(关系运算符)、身份id(is/not is)、类型(type)/isinstance(a,str)可以判断基类和子类的类型,其中第二个参数可以是单独的类型,也可以是元祖形式的所有类型序列

a='123'

isinstance(a,(int,str,list,float))

True

isinstance(a,str)

True

2、python一切都是对象

位运算符:&(按位与),|(按位或),^(按位异或),~(按位取反),<<(左移动),>>(右移动)

位运算:就是把其他进制转换成二进制进行按位与、或、非等的运算

例如:2 & b 转换成二进制的为10 & 11,1与1对比和0与1对比得出的结果为10转换成十进制结果为2。&运算符的定义两个二进制对比都为1结果为1,两个结果中有一个为0或者两个都为0则为0

>>> a = 2

>>> b = 3

>>> a & b

2

|运算符的定义:二进制对比中只要有一个1结果就为1

>>> a = 2

>>> b = 3

>>> a | b

3

单行注释:#(ctrl+/)

多行注释:'''   '''(alt+shift+A)

If else 语句的写法

Py中接受命令行的输入的函数是input()

Python基础入门语法1的更多相关文章

  1. python基础入门语法和变量类型(二)

    列表 列表是 Python 中使用最频繁的数据类型,它可以完成大多数集合类的数据结构实现,可以包含不同类型的元素,包括数字.字符串,甚至列表(也就是所谓的嵌套). 和字符串一样,可以通过索引值或者切片 ...

  2. Python基础入门教程

    Python基础入门教程 Python基础教程 Python 简介 Python环境搭建 Python 基础语法 Python 变量类型 Python 运算符 Python 条件语句 Python 循 ...

  3. Python基础入门教程,Python学习路线图

    给大家整理的这套python学习路线图,按照此教程一步步的学习来,肯定会对python有更深刻的认识.或许可以喜欢上python这个易学,精简,开源的语言.此套教程,不但有视频教程,还有源码分享,让大 ...

  4. Python怎么样入门?Python基础入门教程

    给大家整理的这套python学习路线图,按照此教程一步步的学习来,肯定会对python有更深刻的认识.或许可以喜欢上python这个易学,精简,开源的语言.此套教程,不但有视频教程,还有源码分享,让大 ...

  5. [新手必备]Python 基础入门必学知识点笔记

    Python 作为近几年越来越流行的语言,吸引了大量的学员开始学习,为了方便新手小白在学习过程中,更加快捷方便的查漏补缺.根据网上各种乱七八糟的资料以及实验楼的 Python 基础内容整理了一份极度适 ...

  6. 六. Python基础(6)--语法

    六. Python基础(6)--语法 1 ● Python3中, Unicode转字节的方法 print(bytes("李泉", encoding = 'utf-8')) prin ...

  7. 五. Python基础(5)--语法

    五. Python基础(5)--语法 1 ● break结束的是它所在的循环体, continue是让它所在的循环体继续循环 # 打印: 1 10 2 10 3 10 4 10 5 10 6 10 7 ...

  8. 四. Python基础(4)--语法

    四. Python基础(4)--语法 1 ● 比较几种实现循环的代码 i = 1 sum = 0 while i <= 10: # 循环10-1+1=10次     sum += i     i ...

  9. 三. Python基础(3)--语法

    三. Python基础(3)--语法 1. 字符串格式化的知识补充 tpl = "我是%s,年龄%d,学习进度100%" %('Arroz',18) print(tpl) # 会提 ...

随机推荐

  1. <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no"/>

    <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1, ...

  2. Django中的check指令和sqlmigrate指令

    官方文档的解释如下: Django 有一个自动执行数据库迁移并同步管理你的数据库结构的命令 - 这个命令是 migrate,我们马上就会接触它 - 但是首先,让我们看看迁移命令会执行哪些 SQL 语句 ...

  3. jsp页面直接读取mysql数据库数据显示

    jsp页面直接读取mysql数据库数据显示: <%@page import="java.sql.ResultSet"%> <%@page import=" ...

  4. IDEA格式化代码快捷键失灵原因

    网易云音乐快捷键与IDEA快捷键冲突了!!!!!!!坑爹

  5. 使用python实现冒泡、选择、插入基础排序

    冒泡排序 依次比较相邻两元素,若前一元素大于后一元素则交换之,直至最后一个元素即为最大: 然后重新从首元素开始重复同样的操作,直至倒数第二个元素即为次大元素: 依次类推.如同水中的气泡,依次将最大或最 ...

  6. wamp使用时遇到的问题总结

    1.相关网页无法访问? 解决方案:修改配置文件,将所有的Deny from all 改为Allow from all,再重启wamp 以下列举配置文件 local host无法访问 单击wamp图标, ...

  7. 概率dp 期望 逆推

    题目大意: 从起点0点开始到达点n,通过每次掷色子前进,可扔出1,2,3,4,5,6这6种情况,扔到几前进几,当然对应飞行通道可以通过x直达一点y,x<y,计算到达n点或超过n 点要扔色子的次数 ...

  8. LPR-贷款市场报价利率

    贷款市场报价利率(Loan Prime Rate)介绍: 贷款市场报价利率(Loan Prime Rate,简称LPR)是商业银行对其最优质客户执行的贷款利率,其他贷款利率可在此基础上加减点生成.贷款 ...

  9. RLE压缩算法详解

    from:http://data.biancheng.net/view/152.html RLE压缩算法(下简称RLE算法)的基本思路是把数据按照线性序列分成两种情况:一种是连续的重复数据块,另一种是 ...

  10. 每天进步一点点------altium designer Summer09出现的问题解决方案

    在编译原理图时,引脚和连线旁边出现很多红线,提示 error:signal with no driver. 原理图没有加入到Project里. 第一次导入没问题,但是改了个元件的封装,在更新一下(De ...