Python基础学习
时间2020-2-6
补充数据类型
1*、int型数据
整型数据分为标准整型、布尔型(特殊整型)、长整型
标准整形:
在32位机器上,整型的位宽为32位,取值范围为 -2147483648~2147483647;
在64位系统上,整型的位宽通常为64位,取值范围为-9223372036854775808~9223372036854775807
布尔型(特殊整型):
该值的取值范围只有两个值:True(1)、False(0)
长整型:
Python长整型能表达的数值仅仅与机器值的(虚拟)内存大小有关。
长整数类型是标准整数类型的超集。
在一个整数值后面加上个L(大写或小写都可以,推荐使用大写,避免和数字1混淆),表示这个整数时长整数。
这个整数可以是十进制、八进制、十六进制。
只有对长整数调用repr()才有机会看到L,对长整数调用str()看不到L。
整型和长整型正在统一为一种。1
自从Python2.2起,如果发生溢出,Python会自动将整型数据转换为长整型
到了Python3后的长整型,整型统一归为整型
2*、float型数据
浮点数包括正浮点数和浮点数,浮点型表现的形式有:十进制形式,科学计数形式。只有浮点型才可以使用科学计数形式,比如十进制形式浮点数314,用科学计数形式表示为3.14e22
其余五种数据类型后续更新
1、标识符:
自己可以起名字的地方
命名规则:
- 只能是字母数字下划线
- 数字不能开头
- 不能是关键字
- 大小写敏感(区别大小写)
- 见名知意(尽量避免拼音)
#查看关键字可以使用以下方法
import keyword
print(keyword.kwlist)
建立标识符:
_123a=1
asd='aaaa'
2、变量:
首先,当我们定义了一个变量name = ‘oldboy’的时候,在内存中其实是做了这样一件事:
程序开辟了一块内存空间,将‘oldboy’存储进去,再让变量名name指向‘oldboy’所在的内存地址。如下图所示:3
3、关键字(keyword):
33个具有特殊翻译的单词
Python中的关键字:
[
‘False’, ‘None’, ‘True’, ‘and’, ‘as’, ‘assert’, ‘async’, ‘await’, ‘break’,
‘class’, ‘continue’, ‘def’, ‘del’, ‘elif’, ‘else’, ‘except’, ‘finally’, ‘for’,
‘from’, ‘global’, ‘if’, ‘import’, ‘in’, ‘is’, ‘lambda’, ‘nonlocal’, ‘not’, ‘or’,
‘pass’, ‘raise’, ‘return’, ‘try’, ‘while’, ‘with’, ‘yield’
]
后续详细使用
4、运算符(运算符两侧留空):
- 算数运算符:+ ;- ; * ; % ; / ; ** ; //
布尔型数据可以参与运算:
a, b = True, False
print(a + b + 2)
#3
字符串数据的运算:
a, b = 'x', 'y'
print(a + b)
#xy
注:字符串中没有除‘+’之外的运算
a, b = 'x', 'y'
print(a * b)
#报错TypeError: can't multiply sequence by non-int of type 'str'
a, b = 'xy', 'y'
print(a - b)
#报错TypeError: unsupported operand type(s) for -: 'str' and 'str'
%(取余数)不改变运算结果的数据类型
a, b = 9, 2
print(a % b)
#1
/ (取整数)改变运算结果的数据类型为float
a, b = 9, 2
print(a / b)
#4.5
//(向下取整)
print(9//2)
#4
print(-9//2)
#-5
计算时若是一个float类型数据与int类型计算,结果的数据类型为float型
a, b = 3.0, 4
print(a + b)
#7.0
- 比较运算符(可以连写) :
< ;> ;>= ; <= ; == ; !=
python2中的不等于:
<>或!=
a, b, c = 3, 4, 5
print(a > b >= c != 10)
#False
- 逻辑运算符:
and(与) or(或) not(非)
And:两侧同为真才是真;若左侧表达式能确定最后结果右侧表达式不计算
Or:两侧有一侧为真即为真;若左侧表达式能确定最后结果右侧表达式不计算
Not:非真即假,非假即真
and:
a, b, c = 3, -12, 50
print(a > b and b < c)
#True
a, b, c = 3, -12, 50
print(a < b and b < c)
#print(a < b < c)
#False
or:
a, b, c = 3, -12, 50
print(a < b or b < c)
#True
a, b, c = 3, -12, 50
print(a < b or b > c)
#False
not:
a, b, c = 3, -12, 50
print(not(a < b or b > c))
#True
- 成员运算符:in ,not in
判断对象在或不在规定范围
a = (1, 2, 3, 4, 5)
b = 6
print(b in a)
#False
a = (1, 2, 3, 4, 5)
b = 6
print(b not in a)
#True
- 身份运算符:is ,is not(面向对象部分)
- 赋值运算符:
= ; += ; -= ;*= ;%= ; /= ;**= ; //=
运算符优先级:
5、分支语句:
单分支:
If 表达式或bool值:
逻辑代码
[
elif表达式或bool值:
逻辑代码
…
]
[
else:
逻辑代码
]
a, b = 10, 20
if a > b:
print('闯关成功')
else:
print('闯关失败')
'''
输入3个整数,将其中最小的数输出。
'''
a = int(input('第一个数'))
b = int(input('第二个数'))
c = int(input('第三个数'))
min_num = a
if min_num > b:
min_num = b
if min_num <c:
min_num = c
print('三个数中最小数为:%s' % min_num)
注:
if 可以没有else为了完整性需要填上
来源:CSDN
作者:tan90º
链接:https://blog.csdn.net/weixin_43464797/article/details/104199557