python最基本的一些知识

文章目录

      • 注释
      • 认识print函数
      • 认识input函数
      • 变量
      • 数据类型
      • 运算符

注释

注释的作用:用来解释程序的作用和功能,提高程序的可读性,也可以用来调试代码,当我们不希望编译、执行程序中的某些代码时,就可以注释掉。注释的主要作用还是对代码进行说明,给阅读代码的人看的。
Python源代码的注释形式:
单行注释
多行注释
单行注释: 使用井号(#)表示单行注释的开始,一直到这行结束都是注释。如下有两种:

#这是一行注释
print("Hello World!")   #这也是是一行注释

多行注释: 使用三个单引号或三个双引号将注释的内容括起来。如下所示:

print("Hello World!")
'''
这是多行注释
我要学习Python 了
我很开心
'''
"""
这也是多行注释
我觉得我可以学好python
加油!!!
"""

认识print函数

print()函数是用来输出的。
print()函数的语法格式:

print(value1,value2,...,sep=' ',end='\n',file=sys.stdout,flush=False)

value1,value2,…, : 输出的内容,可以是任意多个变量或值;

# 输出多个值:
value1 = '闻'
print('Hello world','wen','你好,世界!',value1)
#输出结果:
Hello world wen 你好,世界! 闻

Process finished with exit code 0

sep参数: 设置输出多个value的分割符,默认以空格分隔;

#使用sep参数,以井号分割
value1 = '闻'
print('Hello world','wen','你好,世界!',value1,sep='#')
#输出结果:
Hello world#wen#你好,世界!#闻

Process finished with exit code 0

end参数: 决定print函数输出之后以什么结束,默认是’\n’,’\n’代表了换行;

#不使用end
print('Hello world','wen','你好,世界!',1)
print('Hello world','wen','你好,世界!',2)
#输出结果,2后面有一个空行是因为第二个print是以默认的换行结束:
Hello world wen 你好,世界! 1
Hello world wen 你好,世界! 2

Process finished with exit code 0
#使用end,以%结束
print('Hello world','wen','你好,世界!',1,end='%')
print('Hello world','wen','你好,世界!',2,end='%')
#输出结果:
Hello world wen 你好,世界! 1%Hello world wen 你好,世界! 2%
Process finished with exit code 0

file参数: 指定print()函数的输出目标,file参数的默认值是sys.stdout,该默认值代表了系统标准输出,也就是屏幕。也可以通过改变该参数让print()函数输出到指定的文件中;

f = open('poem.txt','w')  #打开文件,'w'代表写入
print('离离原上草,',file=f)
print('一岁一枯荣,',file=f)
f.close()   #关闭文件,释放资源
#运行结果是,会在当前目录生成一个poem.txt文件,文件中会有这两句诗。且输出台为空

Process finished with exit code 0

flush参数: flush参数用于控制输出缓存,该参数一般保持为False即可,这样可以获得较好的性能。

认识input函数

input()函数用于获取用户输入的内容。input()函数总是返回一个字符串,因此用户可以输入任何内容。
input函数举例:

user_input= input('请输入你想输入的内容:')

#运行输出结果(程序会等待用户输入,输入之后按回车键才会继续执行):
请输入你想输入的内容:
user_input= input('请输入你想输入的内容:')
print(user_input)

#运行输出结果:
请输入你想输入的内容:wen
wen

Process finished with exit code 0

input()函数返回的都是字符串类型

user_input1= input('请输入整数:')
print(type(user_input1),user_input1)

user_input2= input('请输入浮点数:')
print(type(user_input2),user_input2)

user_input3= input('请输入列表:')
print(type(user_input3),user_input3)

user_input4= input('请输入字符串:')
print(type(user_input4),user_input4)

user_input5= input('请输入汉字:')
print(type(user_input5),user_input5)

#运行之后输出结果:
请输入整数:26
<class 'str'> 26
请输入浮点数:0.12
<class 'str'> 0.12
请输入列表:[1,2,'wen']
<class 'str'> [1,2,'wen']
请输入字符串:'wen'
<class 'str'> 'wen'
请输入汉字:闻
<class 'str'> 闻

Process finished with exit code 0

变量

变量是用来存储数据的,就像容器一样,可以盛装东西,变量就是”盛装“程序中的数据的地址。
Python中变量的特点:
(1)变量可以直接赋值不用声明
(2)变量的数据类型可以动态改变
变量的命名规则:
(1)由字母、数字、下划线(_)组成,只能以下划线或字母开头,不能以数字开头;
(2)不能是Python关键字,内置函数名;python关键字查看如下:

import keyword
print(keyword.kwkist)

#运行上面代码输出内容(关键字):
['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']

(3)Python语言严格区分大小写,所以abc和AbC是不同的变量名
变量名举例:

wen_xin     #合法变量名
HelloWorld  #合法变量名
_wen		#合法变量名
wen/xin		#不合法变量名,不能包含‘/’符号,只能是字母、数字、下划线
while     	#不合法变量名,不能是关键字
2wen		#不合法变量名,不能以数字开头

数据类型

python支持整型、浮点型、和复数。
整型
python中的整型支持各种整数值,不管是小的整数值,还是大的整数值,python都可以处理,不像其他的语言分为short、int、long等。
大小整数示例:

a = 0
print(type(a),a)
b = 1
print(type(b),b)
c = 999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999
print(type(c),c)
#运行输出结果:
<class 'int'> 0
<class 'int'> 1
<class 'int'> 999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999

Process finished with exit code 0

python整型数的四种表示形式:
(1)十进制形式
(2)二进制形式:以0b或0B开头的整数就是二进制形式的整数

bin_value1 = 0b101
bin_value2 = 0b111
print(type(hex_value1),hex_value1)
print(type(hex_value2),hex_value2)
#运行之后输出的结果(输出的是十进制数):
<class 'int'> 5
<class 'int'> 7

Process finished with exit code 0

(3)八进制形式:以0o或0O开头的整数,数值表示范围是0~7

oct_value1 = 0o7
oct_value2 = 0o10
oct_value3 = 0o0
print(type(hex_value1),hex_value1)
print(type(hex_value2),hex_value2)
print(type(hex_value3),hex_value3)
#运行后输出结果(输出的值是十进制数):
<class 'int'> 7
<class 'int'> 8
<class 'int'> 0

Process finished with exit code 0

(4)十六进制形式:以0x或0X开头的整数,数值表示范围:0~9 和 af(1015)

hex_value1 = 0x9
hex_value2 = 0x10
hex_value3 = 0xaf
print(type(hex_value1),hex_value1)
print(type(hex_value2),hex_value2)
print(type(hex_value3),hex_value3)
#运行输出结果(输出的值是十进制):
<class 'int'> 9
<class 'int'> 16
<class 'int'> 175

Process finished with exit code 0

浮点型
浮点型是带有小数点的数值,python的浮点数有两种:
十进制形式:即平常所见的小数,例如6.2,23.0,0.12

float_num1 = 6.12
float_num2 = 0.32
print(type(float_num1),float_num1)
print(type(float_num2),float_num2)
#运行输出结果:
<class 'float'> 6.12
<class 'float'> 0.32

Process finished with exit code 0

科学计数形式:以科学计数的方式表示的浮点数,例如6.12e2,6.12E2

float_sce1 = 6.12e2
float_sce2 = 0.12e2
print(type(float_sce1),float_sce1)
print(type(float_sce2),float_sce2)
#运行输出结果:
<class 'float'> 612.0
<class 'float'> 12.0

Process finished with exit code 0

复数
在python中可以支持复数,复数的虚部用j或J表示。cmath模块包含了各种支持复数运算的函数。
复数简单示例:

complex_ex1 = 6 + 2j
complex_ex2 = 6 + 0.6j
complex_ex3 = 6 - 6j
print(type(complex_ex1),complex_ex1)
print(type(complex_ex2),complex_ex2)
print(type(complex_ex3),complex_ex3)
#运行输出结果:
<class 'complex'> (6+2j)
<class 'complex'> (6+0.6j)
<class 'complex'> (6-6j)

Process finished with exit code 0

cmath模块(用上了可以学习,用不上只用了解)

import cmath
print(dir(cmath))
#运行结果:
['__doc__', '__loader__', '__name__', '__package__', '__spec__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atanh', 'cos', 'cosh', 'e', 'exp', 'inf', 'infj', 'isclose', 'isfinite', 'isinf', 'isnan', 'log', 'log10', 'nan', 'nanj', 'phase', 'pi', 'polar', 'rect', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'tau']

Process finished with exit code 0

运算符

运算符是一种特殊的符号,用来表示数据的运算、赋值、比较等。

python中运算符的分类:

赋值运算符
算数运算符
位运算符
索引运算符
比较运算符
逻辑运算符

>>>赋值运算符
在python中使用"="作为赋值运算符,通常,使用复制运算符将表达式的值赋给另一个变量。
将常量赋值给变量

str_va = 'python'
num_va = 666
bool_va = True

将一个变量的值赋给另一个变量

str_va1 = 'wen'
str_va2 = str_va1
print(str_va1,str_va2)
print(id(str_va1),id(str_va2))
#运行结果:
wen wen
17693120 17693120

Process finished with exit code 0

连续赋值

a = b = c = 26
print(a,b,c)
print(id(a),id(b),id(c))
#运行结果:
26 26 26
1547290944 1547290944 1547290944

Process finished with exit code 0

将表达式运算的值赋值给变量

num1 = 18
exp_va = num1 + 8
print(exp_va)
#运算结果:
26

Process finished with exit code 0

赋值运算符和算数运算符结合:

符号表示 符号说明
+= x += y,对应于x = x+y
-= x -= y,对应于x = x-y
*= x *= y,对应于x = x*y
/= x /= y,对应于x = x/y
//= x//= y,对应于x = x//y
%= x %= y, 对应于x = x%y
**= x **= y,对应于x = x**y
&= x &= y,对应于x = x&y
|= x | = y,对应于x = x | y
^= x ^= y,对应于x = x ^y
<<= x <<= y,对应于x = x<
>>= x >>= y,对应于x = x >> y

>>>算术运算符
在python 中的基本算术运算符有:加(+)、减(-)、乘(*)、除(/)、整除(//)、求余(%)、乘方(**)

/:除法运算符和数学中的计算相同,对于除不尽的数,会产生小数;
//:整除,运算结果只会得到整数部分,小数部分被舍弃

a = 9
b = 3
c = 5
d = 7
print(a / b,type(a / b))
print(a / c,type(a / c))
print(d / c,type(d / c))

print(a // b,type(a // b))
print(a // c,type(a // c))
print(d // c,type(a // c))

#运行之后的结果:
3.0 <class 'float'>
1.8 <class 'float'>
1.4 <class 'float'>

3 <class 'int'>
1 <class 'int'>
1 <class 'int'>

Process finished with exit code 0

>>>位运算符
位运算符通常在图形、图像处理和创建设备驱动等底层开发中使用。使用位运算符可以直接操作数值的原始bit位,尤其是在使用自定义的协议进行通信时,使用位运算符对原始数据进行编码和解码也非常有效。
python中的位运算符有以下六个:

符号 符号说明
& 按位与
| 按位或
^ 按位异或
~ 按位取反
<< 左位移运算符
>> 右位移运算符

位运算符的运算法则

第一个操作数 第二个操作数 按位与 按位或 按位异或
0 0 0 0 0
0 1 0 1 1
1 0 0 1 1
1 1 1 1 0

按位非,就是把操作数在计算机底层的二进制码按位取反

在计算机底层以补码的形式保存所有的整数。补码的计算规则:整数的补码和原码完全相同,负数的补码是其反码加1;反码是对原码按位取反,符号位保持不变。

左位移规则:将操作数的二进制码整体左移指定位数,左移后右边空出来的位以0来填补,左边超出的位被截断

右位移规则:将操作数的二进制码整体右移指定位数,左移后左边空出来的位以符号位来填补,右边超出的位被截断

位移运算符只适合对整数进行运算。进行位移运算只是得到了一个新的运算结果,而原来的操作数本身是不会改变的。

>>>索引运算符
索引运算符即方括号,在数据结构中常用,在使用索引范围时,即可使用单索引值,也可使用索引范围,同时可指定步长。

a = 'wenxinjin'
print(a[1])
print(a[1:6])
print(a[1:8:2])

#运行结果:
e
enxin
exni

Process finished with exit code 0

>>>比较运算符
在python中提供了bool类型来表示真或假,真用True带表,假用False来代表。
比较运算符用来判断两个值的大小,运算结果只有真或假;
python 中的比较运算符有:>、>=、<、<=、==、!=、is、is not
举例演示如下:

表达式 运算结果
3 > 2 True
3 >= 4 False
4 < 3 False
4 <= 4 True
5 = 6 False
7 != 8 True
a=1,b=2 >>> a is b False
a=1,b=2>>> a is not b True

关于==与is看上去很相似,实质上是有区别的,==只表示比较两个变量的值,但is要求两个变量引用同一个对象。

import time
a = time.gmtime()
b = time.gmtime()
print(a,b,sep='\n')
print(a == b)
print(a is b)

#运行结果:
time.struct_time(tm_year=2021, tm_mon=1, tm_mday=20, tm_hour=14, tm_min=28, tm_sec=14, tm_wday=2, tm_yday=20, tm_isdst=0)
time.struct_time(tm_year=2021, tm_mon=1, tm_mday=20, tm_hour=14, tm_min=28, tm_sec=14, tm_wday=2, tm_yday=20, tm_isdst=0)
True
False

Process finished with exit code 0

>>>逻辑运算符
逻辑运算符用于操作布尔类型的变量、常量或表达式,返回的也是布尔值。

python中的逻辑运算符:
and:与,前后两个操作数都是True,结果才是True,否则返回False;
or:或,前后两个操作数有一个是True,结果就是True,否则返回False;
not:非,只需要一个操作数,操作数是False,结果就是True;操作数是False,结果就是True。

in 运算符
用于判断某个成员是否位于序列中
not in 与in相反

s = 'wenxinjin'
print('wen' in s)
print('liu' in s)
print('wen' not in s)
print('liu' not in s)

#运算结果
True
False
False
True

Process finished with exit code 0**

你可能感兴趣的:(python最基本的一些知识)