python 基础3 变量与运算符

做A*3+B+A运算:

>>> [1,2,3,4,5,6]*3+[1,2,3,]+[1,2,3,4,5,6]
[1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 1, 2, 3, 4, 5, 6]
>>>

引入变量!!!:名字=[   ]     列表赋值给变量

定义一个变量:             为避免重复敲一个列表

>>> A=[1,2,3,4,5,6]        给A赋值
>>> print(A)
[1, 2, 3, 4, 5, 6]

>>> B=[1,2,3]                  给B赋值
>>> A*3+B+A                   运算!!!
[1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 1, 2, 3, 4, 5, 6]
>>>

【注】:写代码时可读性要强,用简单的英文单词来表示一个变量

变量相关知识:  变量名首字母不能是数字,可以是字母、数字、下划线

                            系统保留的关键字不能用在变量名中     区分大小写

        变量没有类型限制

                              >>> a=1
                              >>> a=(1,2,3)
         >>> a={1,2,3}
         >>>

                            保留关键字:    

         False      class      finally    is         return
None continue for lambda try
True def from nonlocal while
and del global not with
as elif if or yield
assert else import pass
break except in raise

关于赋值??? int ,str tuple值类型(不可改变)        list set dict引用类型(可变)   

b没有改变:

>>> a=1
>>> b=a
>>> a=3
>>> print(b)
1

b改变:

>>> a=[1,2,3,4,5,6]
>>> b=a
>>> a[0]='1'
>>> print(a)
['1', 2, 3, 4, 5, 6]
>>> print(b)
['1', 2, 3, 4, 5, 6]
>>>

id()显示内存地址函数

>>> b='hello'
>>> id(b)
51727744
>>> b=b+'python'
>>> id(b)
51813416

>>> 'python'[0]            字符串类型不可变
'p'
>>> 'python'[0]='q'
Traceback (most recent call last):
File "<pyshell#40>", line 1, in <module>
'python'[0]='q'
TypeError: 'str' object does not support item assignment
>>>

 list tuple dict  列表不可变  元祖可变

>>> b=[1,2,3,4]
>>> b.append(4)      可变 
>>> print(b)
[1, 2, 3, 4, 4]
>>> c=(1,2,3)
>>> c.append(4)     不可变
Traceback (most recent call last):
File "<pyshell#51>", line 1, in <module>
c.append(4)
AttributeError: 'tuple' object has no attribute 'append'

>>> a=([1,2,3,[1,2,3,[2,3,4]]])     访问三维元祖中的一个元素
>>> a[3][3][2]
4

>>> a[3][2]='4'           改变元祖中的一个列表的某个元素
>>> print(a)
[1, 2, 3, [1, 2, '4', [2, 3, 4]]]
>>>

 

算数运算符:

>>> 3//2           求商

1
>>> 3/2            求值
1.5
>>> 5%2          求余数
1

>>> 2**3         2的3次方
8
>>>

 

【注】python 中不存在变量的定义  把。。赋值给。。。

赋值运算符:

>>> c=1
>>> c=c+1
>>> print(c)
2
>>> c+=1             !!! 加等、减等、乘等、取模等、取余等
>>> print(c)
3
>>>

比较(关系)运算符:   

字符串   数字    bool类型都可以比较

                                        返回一个bool值!

>>> 1==1
True
>>> 1>1
False
>>> 1>=1     大于或者等于
True

>>> 1!=2       不等于
True
>>>

【注】True 是整型的一种

>>> b=1
>>> b+=b>=1
>>> print(b)
2
>>> print(b>=1)
True

>>> print(b+True)
3
>>>

>>> 'a'>'b'              比较的是asscll码
False

>>> 'abc'<'abd'       一个一个比较
True

>>> [1,2,3]<[2,3,4]     逐个比较列表元素
True

>>> (1,2,3)<(1,3,2)     1相等,2<3....
True
>>>

逻辑运算符:主要操作bool类型  返回结果也是bool类型

and(且)     or(或)   not(非)

>>> True and True     且
True

>>> True or False       或
True
>>> not False              非
True 

int  float 0被认为是False   非0是True

但是:

>>> not '0'
False
>>>

tuple set dict  遵循上述

成员运算符: in         not in   返回结果bool值

身份运算符 : is      not is     返回结果bool值 

                       如果两个变量取值相等,则is 返回True ,is不同意==

>>> a={1,2,3}
>>> b={2,1,3}
>>> a==b
True                   取值是否相等  集合是无序的  
>>> a is b
False                 比较两个变量身份内存地址,如下:

>>> id(a)
51663616
>>> id(b)
51663976
>>>

对象   三个特征  一切都是对象:id     value  type   

    

类型的判断:

>>> a ='hello'
>>> type(a)==str
True
>>> isinstance(a,str)       a是不是字符串?
True
>>> isinstance(a,int)        a是不是整型
False
>>> isinstance(a,(int,str,float))     a是不是三种类型中的一种
True
>>>

位运算符:(把数字当做二进制数进行运算)

&按位与     | 按位或     ^按位异或      ~按位取反     << 左移动     >>右移动

>>>

不接受任何批!!!!!(欢迎指正!!)

 

posted @ 2018-03-12 10:53  大神是我啊  阅读(153)  评论(0编辑  收藏  举报