一、命名规则
- 以下划线开头的标识符是有特殊意义的,
- 以单下划线开头(_foo)的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用"from xxx import *"而导入。
- 以双下划线开头的(__foo)代表类的私有成员,
- 以双下划线开头和结尾的(__foo__)代表python里特殊方法专用的标识,如__init__()代表类的构造函数。
and assert break class continue def del elif else except exec finally for from globalif import in is lambda not or pass print raise return try while with yield
A = 100
b = 200
print(A)
print(b)
# 见名知意: getNameByLine
# getNameByLine: 驼峰式:开头第一个单词全部小写, 小驼峰式
# FilePath: 大驼峰式,面向对象的类名
getNameByLine = 'hello'
get_name_by_line = 'world'
二、数据类型
2.1 基本的Python数据类型:整型(整数)、浮点数(带小数点的数字)和字符串。
- 数字类型: int(有符号整型)、long(长整型[也可以代表八进制和十六进制])、 float(浮点型)、complex(复数)
- 布尔类型: True、 False
- 字符串String
- 列表List
- 元祖Tuple
- 字典Dictionary
money = 28
print(type(money)) # <class 'int'>
money = 28.9
print(type(money)) # <class 'float'>
money = 0.96334321
print(money) # 0.96334321
print(type(money)) # <class 'float'>
money = '100'
print(type(money)) # <class 'str'>
money = "100"
print(type(money)) # <class 'str'>
money = ''' 100 '''
print(type(money)) # <class 'str'>
message = '微软发布: "Window 11来了"'
print(message) # 微软发布: "Window 11来了"
message = "微软发布: 'Window 11来了'"
print(message) # 微软发布: 'Window 11来了'
poem = '''
静夜思
唐李白
窗前明月光,疑是地上霜
举头望明月,低头思故乡
'''
print(poem) # 按照格式输出
isLogin = True
print(isLogin) # True
isLogin = False
print(isLogin) # False
>>> print("\t\t\t \\ \\ \\ \\ \\ \\ \\")
\ \ \ \ \ \ \
>>> print("\nSpecial thanks goes out to:")
Special thanks goes out to:
>>> print("My hair stylist, Henry \'The Great,\' who never says \"can\'t.\"")
My hair stylist, Henry 'The Great,' who never says "can't."
2.2 数据类型转换
userName = input('输入姓名:') # 1
print(userName) # 1
print(type(userName)) # <class 'str'> , 所有输入的都是字符串类型。
total = input("输入数量:")
print(total)
# TypeError: can only concatenate str (not "int") to str
# print(total + 19)
print(total+'19') # 1119, 字符串拼接
print(int(total)+19) # 30, int类型相加
one = '19'
two = "110"
# str --> int / str --> float
print(int(one) + int(two)) # 129
print(float(one) + float(two)) # 129.0
print(int(one) - int(two)) # -91
print(float(one) - float(two)) # -91.0
# float --> int
a = 9.49
print(int(a)) # 9 , 小数点后的部分被去掉
# str --> int str必须是整数类型的字符串,float格式的字符串转int 报错
b = "9.49"
# ValueError: invalid literal for int() with base 10: '9.49'
# print(int(b))
# int/float --> str
print(str(a))
# bool --> int / float / str
flag = True
print(int(flag)) # 1
print(float(flag)) # 1.0
print(str(flag)) # "True"
# int/float/str --> bool: 变量的值是0,''(空字符串),转换结果为False,其余为True
a = 2
print(bool(a)) # True
a = 0
print(bool(a)) # False
a = -1
print(bool(a)) # True
a = ''
print(bool(a)) # False
a = ' '
print(bool(a)) # True
2.3 输出格式
%% 输出%号
%s 字符串 %c 字符
%d 有符号十进制整数 %u 无符号十进制整数
%f 浮点数
%o 八进制整数 %x 十六进制整数(0x) %X 十六进制整数(0X)
%e 科学计数法(e) %E 科学计数法(E) %g %f和%e的简写 %G %f和%E的简写
age = 20
name = '阿飞'
print('我喜欢听' + str(age) + '岁的' + name + '唱歌') # 我喜欢听20岁的阿飞唱歌
print('我喜欢看%d岁的%s跳舞' % (age, name)) # 我喜欢看20岁的阿飞跳舞
money = 99.96
print('我喜欢看%d岁的%s跳舞,花了%f元' % (age, name, money)) # 我喜欢看20岁的阿飞跳舞,花了99.960000元
# print('我喜欢看%d岁的%s跳舞,花了%f元' % (name, age, money,)) # TypeError: %d format: a number is required, not str
print('我喜欢看%s岁的%s跳舞,花了%d元' % (age, name, money)) # 我喜欢看20岁的阿飞跳舞,花了99元
2.4 进制转换
n = 149
result = bin(n)
print(result) # 0b10010101, 二进制
result = oct(n)
print(result) # 0o225, 八进制
result = hex(n)
print(result) # 0x95, 十六进制
x = 0b10100011
print(int(x)) # 163
2.5 删除
a = 1
print(a) # 1
del a
# print(a) # NameError: name 'a' is not defined
2.6 数值类型
整型(Int) - 通常被称为是整型或整数,是正或负整数,不带小数点。
长整型(long integers) - 无限大小的整数,整数最后是一个大写或小写的L。
浮点型(floating point real values) - 浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示(2.5e2 = 2.5 x 10^2 = 250)
复数( (complex numbers)) - 复数的虚部以字母J 或 j结尾 。如:2+3i
int long float complex
10 51924361L 0.0 3.14j
100 -0x19323L 15.20 45.j
-786 0122L -21.9 9.322e-36j
080 0xDEFABCECBDAECBFBAEl 32.3+e18 .876j
-0490 535633629843L -90. -.6545+0J
-0x260 -052318172735L -32.54e100 3e+26J
0x69 -4721885298529L 70.2-E12 4.53e-7j
长整型也可以使用小写"L",但是还是建议您使用大写"L",避免与数字"1"混淆。Python使用"L"来显示长整型。
Python还支持复数,复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型。
三、数据类型内置函数(以下为Python2中的函数表,部分在Python3不存在)
3.1 Python数学函数
函数 返回值( 描述 )
abs(x) 返回数字的绝对值,如abs(-10) 返回 10
ceil(x) 返回数字的上入整数,如math.ceil(4.1) 返回 5
cmp(x, y) 如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1
exp(x) 返回e的x次幂(ex),如math.exp(1) 返回2.718281828459045
fabs(x) 返回数字的绝对值,如math.fabs(-10) 返回10.0
floor(x) 返回数字的下舍整数,如math.floor(4.9)返回 4
log(x) 如math.log(math.e)返回1.0,math.log(100,10)返回2.0
log10(x) 返回以10为基数的x的对数,如math.log10(100)返回 2.0
max(x1, x2,...) 返回给定参数的最大值,参数可以为序列。
min(x1, x2,...) 返回给定参数的最小值,参数可以为序列。
modf(x) 返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示。
pow(x, y) x**y 运算后的值。
round(x [,n]) 返回浮点数x的四舍五入值,如给出n值,则代表舍入到小数点后的位数。
sqrt(x) 返回数字x的平方根,数字可以为负数,返回类型为实数,如math.sqrt(4)返回 2+0j
3.2 Python三角函数
函数 描述
acos(x) 返回x的反余弦弧度值。
asin(x) 返回x的反正弦弧度值。
atan(x) 返回x的反正切弧度值。
atan2(y, x) 返回给定的 X 及 Y 坐标值的反正切值。
cos(x) 返回x的弧度的余弦值。
hypot(x, y) 返回欧几里德范数 sqrt(x*x + y*y)。
sin(x) 返回的x弧度的正弦值。
tan(x) 返回x弧度的正切值。
degrees(x) 将弧度转换为角度,如degrees(math.pi/2) , 返回90.0
radians(x) 将角度转换为弧度
3.3 Python数字类型转换
int(x [,base ]) 将x转换为一个整数
float(x ) 将x转换到一个浮点数
complex(real [,imag ]) 创建一个复数
str(x ) 将对象 x 转换为字符串
repr(x ) 将对象 x 转换为表达式字符串
eval(str ) 用来计算在字符串中的有效Python表达式,并返回一个对象
tuple(s ) 将序列 s 转换为一个元组
list(s ) 将序列 s 转换为一个列表
chr(x ) 将一个整数转换为一个字符
unichr(x ) 将一个整数转换为Unicode字符
ord(x ) 将一个字符转换为它的整数值
hex(x ) 将一个整数转换为一个十六进制字符串
oct(x ) 将一个整数转换为一个八进制字符串
3.4 Python随机数函数
函数 描述
choice(seq) 从序列的元素中随机挑选一个元素,比如random.choice(range(10)),从0到9中随机挑选一个整数。
randrange ([start,] stop [,step]) 从指定范围内,按指定基数递增的集合中获取一个随机数,基数缺省值为1
random() 随机生成下一个实数,它在[0,1)范围内。
seed([x]) 改变随机数生成器的种子seed。如果你不了解其原理,你不必特别去设定seed,Python会帮你选择seed。
shuffle(lst) 将序列的所有元素随机排序
uniform(x, y) 随机生成下一个实数,它在[x,y]范围内。