首页 > 编程语言 >Python+C语言·········基础知识点

Python+C语言·········基础知识点

时间:2023-11-21 20:01:39浏览次数:40  
标签:知识点 遍历 Socket Python 可以 C语言 节点 变量 属性

一:常数、变量和数据类型

1。常数和变量的差异

一个程序通常都会有被处理的对象,而这些对象在被处理之前要以一些特定的类型存放在内存的某一个位置,需要的时候再拿出来处理。

程序设计语言会把放置数据的那些内存位置都给一个名字,并把这个概念以“变量”来命名。放在这些位置的里面的数据是可以随着处理的需求而被改变的。

相较于“变量”,另外一种经过设置之后就不能被改变的数据叫作“常数”。

【在Python中,任一字符串的两侧既可以使用单引号,也可以使用双引号,同一个程序中也可以交替使用,但在使用时一定要成对出现。】

2。变量的命名原则

每一个数据在现实生活中都有其代表的意义,只有一个好的名称才能让这个程序容易被了解其执行的逻辑流程,如此不仅方便程序的设计,也利于日后的维护。

命名的原则除了使用英文字母和数字外,也可以利用下划线来作为变量中不同文意的分隔符,但是自定义变量的第一个符号一定要是英文字母。此外,不能使用中文作为变量的名称。

3。程序设计语言的保留字

Python+C语言·········基础知识点_中序遍历

在为变量命名时一定要避免使用这些字词哦!

 4。基本数据类型

在Python语言中,使用任何类型的变量都不需要事先声明,关键是看我们存放了什么样的数据到变量中。

我们可以通过type()来查询任一个变量当前的类型。例如:

a = 12
type(a)
<class 'int'>
a=12.0
type(a)
<class 'float'>
a = "hello"
type(a)
<class 'str'>

Python+C语言·········基础知识点_子树_02为变量指定一个正确的类型非常重要,不然有时候会发生预想不到的计算错误。为了确保计算的正确性,可以通过int()、float()、str()来进行类型上的转换。

【当需要把计算所得的数值和字符信息一起显示出来的时候,要先把数值转换成字符串之后再使用“+”号连接两个字符串】例如:

msg='The sum is:'
sum=1+2+3
print(msg + sum)
Traceback (most recent call last):
  File "<pyshell#11>", line 1, in <module>
    print(msg + sum)
TypeError: can only concatenate str (not "int") to str
print(msg + str(sum))
The sum is:6

二:C语言知识点

Socket套接字

Socket的应用场景包括:
  1. 网络通信:Socket可以用于实现各种网络应用程序,如Web服务器、邮件服务器、聊天室等。
  2. 分布式计算:Socket可以用于不同计算机之间的进程通信,实现分布式计算任务的协调和数据传输。
  3. 实时通信:Socket可以用于实现实时通信应用,如在线游戏、视频会议等。
  4. 文件传输:Socket可以用于实现文件传输功能,允许客户端和服务器之间传输文件。
  5. 远程控制:Socket可以用于远程控制设备,如远程桌面、远程终端等。

总之,Socket套接字是一种实现网络通信的机制,可以在不同设备之间进行数据传输,并在各种应用场景中发挥重要作用。

Python+C语言·········基础知识点_递归_03

PV操作

PV操作是指对一个共享资源的访问进行控制,其中P操作表示申请资源,V操作表示释放资源。

理解PV操作可以参考以下步骤:

  1. 初始化共享资源的数量,设置为初始值。
  2. 当一个进程需要访问共享资源时,需要执行P操作,即申请资源。如果资源数量大于0,则允许访问,资源数量减1;如果资源数量等于0,则阻塞进程,直到资源可用。
  3. 当一个进程使用完共享资源后,需要执行V操作,即释放资源。资源数量加1,并唤醒可能在等待资源的进程。

二叉树的遍历

二叉树的遍历方法有三种,分别是前序遍历、中序遍历和后序遍历。

  1. 前序遍历(Pre-order Traversal):先访问根节点,然后递归地前序遍历左子树,最后递归地前序遍历右子树。
  2. 中序遍历(In-order Traversal):先递归地中序遍历左子树,然后访问根节点,最后递归地中序遍历右子树。
  3. 后序遍历(Post-order Traversal):先递归地后序遍历左子树,然后递归地后序遍历右子树,最后访问根节点。

可以通过观察节点的访问顺序来区分不同的遍历方法。以二叉树的根节点为起始点,按照不同的遍历方法,访问节点的顺序会有所不同。具体来说:

  • 前序遍历:根节点 -> 左子树 -> 右子树
  • 中序遍历:左子树 -> 根节点 -> 右子树
  • 后序遍历:左子树 -> 右子树 -> 根节点

Python+C语言·········基础知识点_递归_04

线性插值

线性插值是一种常用的数值计算方法,用于根据已知的两个点的值,推算出两个点之间的值。

线性插值公式可以表示为:y = y1 + (x - x1) * ((y2 - y1) / (x2 - x1))

Python+C语言·········基础知识点_子树_05

数据库设计

简单属性是指一个实体只有一个值的属性,例如一个人的身高、年龄等。

复合属性是由多个简单属性组成的属性,例如一个人的地址可以由省、市、区等多个简单属性组成。

多值属性是指一个实体可以有多个值的属性,例如一个人可以有多个电话号码。

派生属性是通过计算或推导得出的属性,例如根据一个人的出生日期可以推导出其年龄。

它们的区别主要在于属性值的数量和属性值的来源。

简单属性只有一个值,

复合属性由多个简单属性组成,

多值属性可以包含多个值,

而派生属性是根据其他属性的值计算或推导得出的。

使用场景可以根据实际情况来确定。

简单属性适用于只有一个值的情况,例如一个人的姓名、性别等。

复合属性适用于需要多个简单属性来描述的情况,例如一个人的地址。

多值属性适用于一个实体可以有多个值的情况,例如一个人的电话号码。

派生属性适用于通过其他属性的值计算或推导得出的情况,例如根据一个人的出生日期来计算其年龄。

Python+C语言·········基础知识点_递归_06

再厚的书,一页一页用心翻阅,终能内化于心;再高的山,一步一步努力攀登,终能到达峰顶。明确自己想要的,坚定自己选择的,从微小的事情着手,久久为功,你终会离自己的目标越来越近。共勉!


标签:知识点,遍历,Socket,Python,可以,C语言,节点,变量,属性
From: https://blog.51cto.com/u_16174658/8506079

相关文章

  • python pyreadline补全进阶 #多字段补全
    先看一个实例在Python的readline模块中,readline.set_completer()函数用于设置一个自动补全函数(completer)来为用户提供命令行输入的自动补全功能。该completer函数接受一个文本输入作为参数,并返回一个包含可能的自动补全选项的列表。当用户在命令行中输入时,readline模块会调用这......
  • python常用小知识
    使用Path().rglob()时,不能立即删除该目录下的文件夹,否则报找不到目录的问题;原因:待遍历的子目录被保存了,但你在外部删除了,rglob()内部未感知到,从而导致错误;os.path.basename()可获取到文件名(带后缀那种),要不带后缀,需要自己处理;但Path().stem可直接获取文件名(不带后缀),Path().name可......
  • 【Python】【OpenCV】视频帧和摄像头帧操作 and 窗口显示
    一、读取写入视频文件1importcv223#创建一个视屏捕获对象4videoCapture=cv2.VideoCapture('AVI.avi')56#获取视频的属性值,cv2.CAP_PROP_FPS获取视频帧率7fps=videoCapture.get(cv2.CAP_PROP_FPS)89#cv2.CAP_PROP_FRAME_WIDTH/HEIGHT返回floa......
  • Python——第三章:函数的返回值
    函数的返回值:函数执行之后.会给调用方一个结果.这个结果就是返回值关于return:    函数只要执行到了return.函数就会立即停止并返回内容.函数内的return的后续的代码不会执行    1.如果函数内没有return,此时外界收到的是None    2.如果写了re......
  • C语言
     编译命令:gcctest.c生成a.exe可执行文件gcctest.c-o xxx生成xxx.exe可执行文件带参主函数格式:intmain(intargc,char*argv[])argc:输入的字符个数argv[]:字符 ......
  • 聪明办法学Python_task1_11.20-11.21
    聪明办法学Python_task1_11.20-11.211.task011.1Python灵魂三问1.2Python环境配置2.task022.1注释2.2基本控制台输出2.3错误2.4基本控制台输入2.5导入模块1.task01:Python简介/安装1.1Python灵魂三问为什么学Python?Python是全球最流行的编程语言......
  • Vscode怎么指定Python解释器
    Windows使用Vscode编写Python代码默认使用系统手动安装的设置在环境变量的Python解释器,如果需要修改称虚拟解释器conda则可以使用以下方法软件中央上部选择"显示并运行命令"Python:选择解释器选择需要的解释器......
  • 计算机科学与技术之网络编程 Windows下VC6.0 网络SOCKET编程C语言实现(服务端)
    在VC6.0平台用C语言实现网络SOCKET通信一.在VC6.0平台创建Win32ConsoleApplication工程工程名称自拟(或输入firstSocket)添加新建项文件C++SourceFile 文件名自拟,后缀.c(如firstSocket.c)在firstSocket.c加入头文件#include<winsock2.h>链接动态库#pragmacomment(l......
  • Python 中函数 range
    range函数简要说明接收参数为1/2/3,表示的是左闭右开接收参数当使用Python中的range()函数时,可以总结如下使用方法:range(stop):生成从0到stop-1的整数序列。产生的序列包含起始值0,但不包含stop。foriinrange(5):print(i)输出:01234range(start,stop):生成......
  • C语言:用for循环语句编写金字塔
       今天我将继续为大家分享C语言的知识,今天要分享的内容依旧是C语言中的for循环语句中的经典例题。好了,废话少说,让我们进入今天的学习内容吧!#include<stdio.h>intmain(){inti,j,c;for(i=1;i<=10;i++)//十行的金字塔{for(j=1;j<=15-i;j++)//*前面有15-i个......