Python基础入门语法1

PY的交换值的方法

x.y = y.x

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

PY的缺点:

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

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

 

扫描二维码关注公众号,回复: 7883539 查看本文章

基本的数据类型

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

Bool型:false和true型

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

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()

猜你喜欢

转载自www.cnblogs.com/flowercatnice/p/11875519.html