变量和数据类型 – Python量化投资

变量和数据类型

内容:

  • 变量
  • 字符串
  • 数字和运算符
  • 数据类型转换


 

一、变量

1.定义:指在计算机编程中与关联的标识符配对的内存存储位置,在使用时含相关类型的值,该值可以修改。

当Python变量被使用时,在内存里会产生两个动作:1.开辟新的内存地址;2.赋予指定的变量值

注意:变量被指定的同时,必须强制赋初始值,否则将报错

2.多个变量赋值

如:


>>> a=b=c=1         # 多个变量赋值
>>> print(a,b,c)    # 打印变量
>>> 1 1 1           # 打印结果


3.变量值类型

包括:字符串(String)、数字(Numeric)、元组(Tuple)、列表(List)、字典(Dictionary)


 

二、字符串

1.字符串使用

由单引号(’ ‘)、双引号(” “)、三引号(”’ ”’)表示的任意字节字符组成,其中三引号中的字符串可以包含换行符制表符其他特殊字符等,如:


>>> text = '''你好,中国
中国万岁\n
繁荣、昌盛\t Yeah!'''
>>> print(text)
你好,中国
中国万岁

繁荣、昌盛     Yeah!


 2.字符串的基本操作

(1)字符串值读取

通过下标(index)如:


>>>text = 'we are family!'    #变量赋值
>>>text[1]                    #获取下标为1的字符
e                             #得到结果


切片:


>>> text[3:6]      #读取下标3-6的字符
>>> text[:6]       #读取下标0-6的字符
>>> text[:]        #读取整个字符串(感觉没什么意义)
>>> text[::2]      #从头到尾,步长为2(即每隔一个字符),读取对应字符
>>> text[-1]       #读取右边第一个字符
>>> text[-3:-1]    #从右往左,读取倒数第四、三、二个字符


注意:若注明了右下标,则右下标对应值不算入其中,如:


>>> name = '1234567'
>>> name[1:4]
'234'


2.字符串合并

字符串合并通过 “+” 号连接合并

3.字符串修改

字符串不能直接修改,是通过读取原有字符串进行合并来实现的,如:


>>> name = name + "hello"
>>> print(name)
1234567hello


4.字符串删除


>>> del(name)


5.获取字符串长度


>>> len(name)


6.r/R符号

作用类似 三引号,如:


>>> print('hello \nnooi\thahh')
hello
nooi    hahh
>>> print(r'hello \nnooi\thahh')
hello \nnooi\thahh


7.重复输出(*)


>>> print("hello" * 2)


8.格式字符串(%


print("I'm %s. I'm %d years old" % ('Gogo', 10))



三、数字和运算符

数字(Digital)包括:整数(Integer)、浮点数(Float)、复数(Complex)、布尔(Boolean)

1.算术运算符

加(+)、减(-)、乘(*)、除(/)、取模(%)、幂(**)、取整(//)

优先级:括号 > 幂 > 乘(除)> 取模 ( 取整) > 加(减)

2.整数

由正整数、零和负整数构成,不包括小数、分数等,在Python中整数的长度不受限制,但受内存的限制

3.浮点数

在Python中,浮点数就是带小数点的数,浮点数不一定是精确值,因为受内存限制,超过一定长度后,末尾取近似值,如:


>>> 10.0/3
3.3333333333333335


4.复数


>>> (2-3j).real
2.0
>>> (2-3j).imag
-3.0


5.布尔

and、or、not

6.二进制

在Python中用 0b 开始表示二进制(早期的Python版本不支持0b开头的二进制数)。如:


>>> 0b110101
53



>>> bin(17)
'0b10001'


 7.二进制位运算符










运算符中文名称运算规则描述
&按位与运算符

a&b,参与运算的a,b,如果相应位数为1,则该位结果为1,否则为0

|按位或运算符a|b,只要对应二进制位一个为1,则结果为1,都为0时结果为0
^按位异或运算符a^b,当对应的二进制位相异时,结果为1,相同时结果为0
~按位翻转运算符~a,将二进制位+1后乘以-1,a的按位翻转为:-(a+1)
<<左移动运算符a<<x,将a的二进制位全部向左移x位,高位丢弃,地位补0
>>右移动运算符a>>x,将a的二进制位全部向右移x位,低位丢弃,高位补0

二进制位运算符表


>>> #示例如下:
>>> 0b110110001&0b00101010 32 >>> 0b110110001|0b00101010 443 >>> 0b110110001^0b00101010 411 >>> ~0b110110001 -434 >>> 0b110110001<<3 3464 >>> 0b110110001>>3 54


 

 8.比较运算符

 包括:等于(==)、不等于(!=)、大于(>)、小于(<)、大于等于(>=)、小于等于(<=)

 9.优先级

 算术运算符(位运算符) >  比较运算符  >  逻辑运算符


 四、数据类型转换


>>> int(15.1)            #浮点数 > 整数
15               
>>> int('20')            #字符串 > 整数
20
>>> float(2)             #整数 > 浮点数
2.0
>>> float('23')          #字符串 > 浮点数
23.0
>>> complex(1,3)         #转复数
(1+3j)
>>> complex(2)           #整数 > 复数
(2+0j)
>>> complex('4')         #字符串 > 复数
(4+0j)
>>> str(4+2j)            #复数 > 字符串
'(4+2j)'
>>> bin(30)              #整数 > 二进制数
'0b11110'
>>> oct(16)              #整数 > 八进制数
'0o20'
>>> hex(55)              #整数 > 十六进制数
'0x37'
>>> chr(48)              #整数 > ASCLL码
'0'
>>> ord('b')             #ASCLL码 > 整数
98


https://www.cnblogs.com/tuooo/p/11468266.html

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论