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. c++基础语法规则

    1,c++存储类:定义函数或者变量的生命周期     auto 关键字用于两种情况:声明变量时根据初始化表达式自动推断该变量的类型.声明函数时函数返回值的占位符. register 存储类用于定义存储 ...

  2. Flask 教程 第十五章:优化应用结构

    本文翻译自The Flask Mega-Tutorial Part XV: A Better Application Structure 这是Flask Mega-Tutorial系列的第十五部分,我 ...

  3. 关于Excel,你一定用的到的36个Python函数

    从Excel到Python:最常用的36个Pandas函数关于Excel,你一定用的到的36个Python函数 本文涉及pandas最常用的36个函数,通过这些函数介绍如何完成数据生成和导入.数据清洗 ...

  4. Java compareTo的用法

    compareTo() 方法用于将 Number 对象与方法的参数进行比较.可用于比较 Byte, Long, Integer等. 该方法用于两个相同数据类型的比较,两个不同类型的数据不能用此方法来比 ...

  5. ubuntu 下的ftp详细配置

    FTP(文件传输协议)是一个较老且最常用的标准网络协议,用于在两台计算机之间通过网络上传/下载文件.然而, FTP 最初的时候并不安全,因为它仅通过用户凭证(用户名和密码)传输数据,没有进行加密. 警 ...

  6. 链剖-What you are?-大话西游-校内oj2440

    This article is made by Jason-Cow.Welcome to reprint.But please post the writer's address. http://ww ...

  7. buuctf wireshark

    首先下载文件夹 然后用wireshark进行分析 然后发现啥也不会然后查一下资料https://www.jianshu.com/p/55ec409c739e 然后根据资料找了tcp然后根据解析做出此题 ...

  8. honoka和格点三角形(牛客寒假训练营day1)

    可以把面积为1的好三角形分成两类分开统计:两条边和两个坐标轴平行:只有一条边和某个坐标轴平行. 对于第一种情况,一定是1*2或者2*1的形式,一个1*2的矩形中含有4个不同的三角形.总数是4*((n- ...

  9. Java - Test - TestNG: testng.xml 元素 class

    Java - Test - TestNG: testng.xml 元素 class 1. 概述 class 相关的元素 classes class methods exclude include 2. ...

  10. Go_Json序列化

    1. json介绍 2. json格式说明 3. json序列化 3.1 结构体序列化 package main import ( "fmt" "encoding/jso ...