您的位置:首页 > 编程语言 > Python开发

python基础-基本数据类型

2017-12-14 13:56 246 查看

一、进制转换

十进制:逢10进1,1,2,3,4,5,6,7,8,9,10,11······

二进制:逢2进1, 001,010,011,100,101,110,111······

八进制:逢8进1,1,2,3,4,5,6,7,10,11,12,13,14,15,16,20······

十六进制:逢16进1,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F

二进制 -> 十进制:10010010 -> 146,2**7+2**4+2**1

二进制 -> 八进制:10010010 -> 0o222, 10(2) 010(2) 010(2)

二进制 -> 十六进制:10010010 -> 0x92, 1001(9) 0010(2)

二、数据类型



三、标识符和关键字

标识符由字母、下划线和数字组成,且数字不能开头。

标识符是区分大小写的:Andy != andy。

命名规则:见名字知意。

小驼峰式命名法(lower camel case): 第一个单词以小写字母开始;第二个单词的首字母大写,例如:myName、aCat。

大驼峰式命名法(upper camel case): 每一个单字的首字母都采用大写字母,例如:FirstName、LastName。

还有一种命名法是用下划线“_”来连接所有的单词,比如send_buf。

关键字是已经被python预定义,且具有特殊含义的标识符,不允许开发者自行定义和关键次相同名字的变量,否则会引起程序错误。

hljs python">注:如何在python中查看关键字?

>>> import keyword
>>> keyword.kwlist


四、python中的输出

(一)占位符

hljs python">>>> age = 10
>>> print('我今年%d岁了'% age)
我今年18岁了


(二)转义符



hljs python">1. 可以用反斜杠对双引号进行转义。

>>> print("I l\"o\"ve you")
I l"o"ve you

2、可以用单引号引起这个字符串。

>>> print("I l'o've you")
I l'o've you


(三)格式符号和格式化操作符辅助命令

格式符号转换
%s通过str() 字符串转换来格式化
%d有符号十进制整数
%o八进制整数
%x十六进制整数(小写字母)
%X十六进制整数(大写字母)
%e索引符号(小写’e’)
%f浮点实数,浮点数默认取小数点后六位,要标明.2f
%G%f和%E的简写
m.nm显示最小总宽度,n是小数点后的位数,“。是小数点”
-用于左对齐
+在正数前面显示“+”号
#在八进制前显示0o,在十六进制前显示0x
0显示的数字前面填充“0”取代空格
hljs python">1. 用format()格式化str1

>>> str1 = "{a} love {b}.{c}"
>>> print(str1.format(a = "I", b = "you", c = "com"))
I love you.com

2、如果为{0},{1},{2}则默认,不用说明。

>>> str1 = "{0} love {1}.{2}"
>>> print(str1.format("I", "you", "com"))
I love you.com

3、怎么显示PI = 3.14,用format前面字符串怎么写?

>>> print("{0}{1:.2f}".format("PI = ",3.1415926))
PI = 3.14


五、运算符

(一)算数运算符

运算符描述实例
+两个对象相加 a + b 输出结果 30
-得到负数或是一个数减去另一个数 a - b 输出结果 -10
*两个数相乘返回一个被重复若干次的字符串 a * b 输出结果 200
/b / a 输出结果 2
//取整除返回商的整数部分 9//2 输出结果 4 , 9.0//2.0 输出结果 4.0
%取余返回除法的余数 b % a 输出结果 0
**指数a**b 为10的20次方, 输出结果 100000000000000000000
算数运算符的优先级: * > / % // > + - 有括号要先算括号里面的

(二)赋值运算符

运算符描述实例
+=加法赋值运算符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

(三)比较(即关系)运算符

运算符描述
==检查两个操作数的值是否相等,如果是则条件变为真。
!=检查两个操作数的值是否相等,如果值不相等,则条件变为真。
>检查左操作数的值是否大于右操作数的值,如果是,则条件成立。
<检查左操作数的值是否小于右操作数的值,如果是,则条件成立。
>=检查左操作数的值是否大于或等于右操作数的值,如果是,则条件成立。
<=检查左操作数的值是否小于或等于右操作数的值,如果是,则条件成立。

(四)逻辑运算符

运算符逻辑表达式描述
andx and y“与”:如果 x 为 False,x and y 返回 False,否则它返回 y 的值。
orx or y“或”:如果 x 是 True,返回 True,否则它返回 y 的值。
notnot x“非”:如果 x 为 True,返回 False 。如果 x 为 False,返回 True。
1、逻辑运算符优先级:not > and > or

2、在Python中True为1,False为0

3、台条件里,只要不为0,条件都成立。

六、数据类型转换

函数转换
int(x [,base ])将x转换为一个整数
float(x)将x转换为一个浮点数
complex(real [,imag ])创建一个复数,real为实部,imag为虚部
str(x)将对象 x 转换为字符串
repr(x)将对象 x 转换为表达式字符串
eval(str)用来计算在字符串中的有效Python表达式,并返回一个对象
tuple(s)将序列 s 转换为一个元组
list(s)将序列 s 转换为一个列表
chr(x)将一个整数转换为一个Unicode字符
ord(x)将一个字符转换为它的整数值
hex(x)将一个整数转换为一个十六进制字符串
oct(x)将一个整数转换为一个八进制字符串
bin(x)将一个整数转换为一个二进制字符串
hljs python">1、把str1转化为八进制数的整形

>>> str1 = '10'
>>> num = int(str1, 8)
8

2、复数的用法

>>> c1 = 10 + a4
>>> c2 = complex(10, 4)  # c1和c2显示的结果一样

3、repr() 括号中不管是什么类型,都能转为为字符串。
>>> a = 10
>>> repr(a)
'10'

4、eval() 把字符串形式还原成为原来的类型
>>> a = '[1,2,3]'
>>> eval(a)
[1,2,3]

5、十六进制数转化成十进制数

>>> a = '0xa'
>>> b = int(a, 16)
10
>


七、补充

如何在python中四舍五入?

hljs python">>>> a = 5.4
>>> b = 5.9
>>> c = int(a+0.5)
>>> d = int(b+0.5)


计算出 not 1 or 0 and 1 or 3 and 4 or 5?

1、python中and是从左到右计算表达式的,则都为真,则返回最后一个值,若为假,则返回第一个假的值。

>>> -1 and -2
-2
>>> -1 and 0
0
>>> 0 and -1
0

2、python中的or也是从左到右计算表达式的,谁先为真取谁。

>>> -1 or -2
-1
>>> 0 or -2
-2


运算符排序

幂运算 > 正负号 > 算术运算符 > 比较运算符 > 逻辑运算符、

位运算

①&按位与:全1才1,否则0. 任何数&1为0,&0为0

② | 按位或: 有1就1,都是0才为0,任何数 | 0 都为任何数。

③^按位异或:不相同为1,相同为0

④~按位取反:~9 = 10 n取~ 为 ~(n+1)

如何快速完成乘法和除法运算

①<<按位左移: 快速完成乘法 5 << 1 左移一位乘以2

②>>按位右移:快速完成除法 5 >> 1 右移一位地板除2
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  二进制