程序设计语言—Python几种语言区别的总结

程序设计语言篇—Python&几种语言区别的总结

文章目录

    • 程序设计语言篇—Python&几种语言区别的总结
    • 一、Python介绍&理解
      • 1.1 Python基础
      • 1.2 Python规范
    • 二、标识符&变量&常量
    • 三、数据类型&运算符和表达式
      • 3.1 数据类型
      • 3.2 运算符&表达式
    • 四、常用的函数&内部函数
      • 4.1 输入输出函数
      • 4.2 常用的内部函数
      • 4.3 自定义函数&调用
    • 五、选择与循环结构
      • 5.1 条件语句
      • 5.2 循环语句
    • 六、最后总结区别&注意点(Java/Python/C/VB)


在线编辑器
在线编辑器
Python教程:Python教程
Python菜鸟教程

一、Python介绍&理解

1.1 Python基础

1、Python定义:面向对象的解释型语言,结合了跨平台性和互动性的高级通用脚本语言。保留了编译器的部分功能,随着程序的运行,解释器也会生成一个完整的目标代码。
2、Python的特点:

  • 易于学习:关键字少,结构简单(没有分号、begin、end等标记→对缩进要求高),有一个明确定义的语法,仅有35个保留字,
  • 易于阅读/维护:结构清晰、源代码易于维护
  • 广泛的标准:有丰富的库,可以跨平台使用,在UNIX和Windows 兼容很好。
  • 互动模式:可以从终端输入执行代码并获得结果的语言、互动的测试和调试代码片断。
  • 可移植:开放源代码,因此Python已经被移植到许多平台。
  • 可扩展:可以结合其他语言,比如使用C或C++完成一段运行很快的关键代码,然后从 Python 程序中调用。
  • 可嵌入:可以将Python 嵌人到 CC++程序,让程序获得“脚本化”的能力。
  • 数据库:Python 提供所有主要的数据库的接口。
  • CUI编程:支持GUI可以创建和移植到许多系统调用。

3、Python的应用领域

  • Web 和Internet 开发:Python 有大量成熟的 Web框架,如 Django、Flask、Bottle、Tornado 等。
  • 科学计算和统计:Python 有像 NumPy、Pandas 这样的科学计算库,完全可以代替R语言和 MATLAB。
  • 人工智能:通用机器学习可以使用sklearm,深度学习有谷歌的TensorFlow和脸书的PyTorch,这些都是业界最流行的 Python机器学习框架。就连著名的阿尔法围棋(AlphaGo)也是使用Python编写的。
  • 桌面界面开发:GUI
  • 软件开发:App
  • 网络爬虫:Python+Matlab

1.2 Python规范

1、行与缩进:严格遵守缩进规则

  • 缩进方式:①单个制表符;②两个空格;③四个空格,不能混用。
  • 缩进定义:每行语句开始前的空白区域,用来表示Python程序间的包含和层次关系。
  • Python中:顶行编写且不留空白,Python不使用{},采用缩进的方式来控制函数、逻辑判断、代码组,同一层次必须使用相同数目的缩进空格数,否则就会报错"unindent does not match any outer indentation level"表示"文本没有对齐"。

2、代码组
定义:对于像if、def、while、class这样的复合语句,第一行以关键字开始,行的末尾以":"结束,在这之后的一行或多行所构成的代码片段叫做代码组,也成为子句。
在代码组中的每一行代码都要遵循相同的缩进规则。

3、注释
定义:代码中辅助性文字,会被编译器或解释器忽略,不会被计算机执行,用于对代码的说明。
注意:注释不能嵌套使用

#单行注释
'''
多行注释
'''
"""
多行注释
"""

4、源代码文件类型
以下这些都可以直接运行,不需要编译或者连接

  • 源代码文件:.py,由Python负责解释
  • 字节代码文件:.pyc,源文件经过编译后生成的文件,不能直接用文本编译器修改,与平台无关,可以在大部分操作系统上运行。(跨平台性)
  • 优化后的字节码文件:.pyo,更像编译型语言里的中间文件。

5、“”>>>":Python语言环境的提示符,表示此符号后可以输入Python语句,没有的是Python语句的执行结果。

二、标识符&变量&常量

标识符命名规则:变量、方法、类等要素命名时使用的字符序列。即凡是自己可以起名字的地方都叫标识符

  • 大小写字母、数字、下划线、汉字,首字符不能是数字(不建议采用中文开头)
  • 变量名之间不能出现空格
  • 区分大小写字母
  • 不能与保留字相同

1、变量:都不需要声明变量,直接使用。
(1)变量的分类:

  • 全局变量:函数之外定义的变量,访问权限:被文件内部的任何函数和外部文件访问【没有Java中的封装性之说】
    建议:全局变量定在文件的开头,或者放到一个专门的文件中,用import引用。
  • 局部变量:在函数之内定义的变量

【与Java区别】java是面向对象的,因此Java中的变量分为成员变量(类的成员之一)、局部变量
(2)变量的赋值方式:赋值操作就是变量声明和定义的过程。一次新的赋值将创建一个新的变量,如果没有赋值,Python认为该变量不存在。

  • Python可以同时为多个变量赋值,如:a,b=1,2
  • 一个变量可以通过赋值指向不同类型的对象。【指向什么类型就是什么类型的变量】
  • 同步赋值语句:a,b=1,2;应用:同时给多个变量赋值,简化互换变量的值

2、常量
Python中没有提供定义常量的保留字,可以自定义一个常量类来实现常量的功能

class_const:class ConstError(TypeError): passdef _setattr_(self,name,value):if self._dict_.has_key(name):raise self.ConstError, "Can't rebind const const(%s)"%nameself._dict_[name]=value
import sys
sys.modules[_name_]=_const()

三、数据类型&运算符和表达式

3.1 数据类型

Python中标准的六个数据类型:【不可变】Number(数字)、String(字符串型)、Tuple(元组)、【可变】List(列表)、Set(集合)、Dictionary(字典)
理解:str()、tuple()、list、set()、dict():可以理解为数据类型的转换
使用它们创建相关类型的数据时(只接受一个参数,或者0):需传入一个可迭代的对象作为参数(列表、元组、集合、字典的键、字符串、文件对象、生成器、迭代器),无论可不可变,可以理解为数据类型的转换!

1、number(数字):可以进行数值运算

  • Python中支持:int、float、bool、complex(复数),强类型语言【如Java】的每种一个代表
  • 整数数值可以表示为十进制(默认)、二进制(0b)、八进制(0o)、十六进制(0x)
  • 在混合计算的时候会自动将整形转换为浮点数【自动转换】
  • /结果是多少就是多少,提供了int()来向0取整,//表示向下取整

2、String(字符串)
形式:‘’、“”,两种效果一样,注意Python中没有单独的字符类型,一个字符就是长度为1的字符串,字符串不能被改变【如果str[0]=‘a’会报错!】
定义空字符串:“”、’‘、str()
转义字符:\表示:换行\n、反斜杠\、单引号’、双引号"、制表符\t,当路径中有\,可以用\表示\,或者r"路径"
常用的操作:

  • 截取/切片、索引,返回一个新的字符串。从0开始,-1表示末尾,尾下标取不到,如果是[0,-1],只能取到倒数第二个,[0:]取到尾。单双引号是不会输出的
    • 变量[索引/下表]:从前往后从0开始越来越大,从后往前从负数-1开始越来越小
    • 变量[头下标 : 尾下标]:同样尾下标取不到。
    • 变量[头下标 : 尾下标]:步长正数:从前往后;步长负数:从后往前
  • 连接操作+:表示连接字符串
  • 复制操作*n:表示复制当前字符串n次,前后都行(注意复制后的字符串没有空格)
str = 'jiaoyu'
print(str)#字符串输出是没有引号的
print(str[0:-1])#jiaoy,不包含尾下标
print(str[0])#第一个字符:j
print(str[-3])#从后往前,从-1开始,即倒数第三个:o
print(str[str*2])#复制:jiaoyujiaoyu,注意中间是没有空格的
print(str+"TEST")#jiaoyuTEST
print(str[0:])
print(str[0:6])#这两个都能截取到全部字符串,超出索引也没事

3、tuple(元组)
定义:()之间元素之间用逗号分隔,元素类型任意,不变性,有序性,可重复性。字符串可以看成是一种特殊的元组。
定义空元组:()、tuple();1个元素的元组:[1,],注意要有逗号!
元组的不可变性性质:安全性(不希望被修改的数据)、性能(无需额外的内存来处理可能的修改)、哈希(可以作为字典的键/集合的成员)
常用的操作:索引、切片/截取、+连接操作,注意不能复制*n,否则元组的元素就重复了。操作和字符串一样

  • 截取/切片、索引,返回一个新的元组/元组元素
    • 变量[索引/下表]:得到是某个元组元素。从前往后从0开始越来越大,从后往前从负数-1开始越来越小
    • 变量[头下标 : 尾下标]:得到的是某个子元组。同样尾下标取不到。list1[2:2]得到的是空列表
    • 变量[头下标 : 尾下标 : 步长]:得到的是某个子元组。步长正数:从前往后;步长负数:从后往前
  • 连接操作+:表示连接列表得到一个新的元组

4、list(列表)
定义:[]之间以逗号分隔开的元素列表,元素类型任意,可重复性,有序性,不变性
定义空列表:[]、list()
常用的操作:

  • 截取/切片、索引,返回一个新的列表
    • 变量[索引/下表]:得到是某个列表元素。从前往后从0开始越来越大,从后往前从负数-1开始越来越小
    • 变量[头下标 : 尾下标]:得到的是某个子列表。同样尾下标取不到。list1[2:2]得到的是空列表
    • 变量[头下标 : 尾下标 : 步长]:得到的是某个子列表。步长正数:从前往后;步长负数:从后往前
  • 连接操作+:表示连接列表得到一个新的列表
  • 复制操作*n: 表示复制列表得到一个新的列表
  • 改变List元素:通过切片和索引得到列表的一个/多个元素,通过列表赋值来改变
    • 改变某个元素值:得到某个索引位置的元素str[0],可以为其赋值各种类型的变量改变该位置的元素值
    • 改变子列表(可以起插入作用或者替换1/多个元素):使用新的列表替换得到的子列表,特殊情况:list1[2:2]得到的是空列表,那么将新的列表放在索引为2这个列表元素的前面。
      原则:列表元素可以是列表类型,列表不能不能替换列表某个元素(特殊情况该元素是列表类型)
#所有的操作都是基于原列表list1进行的
list1=['abcd',786,2.23,'Jiaoyu',70.2]
list1[2:2]#得到的是空列表list1[0]=3#索引为0的元素值改变了[3,786,2.23,'Jiaoyu',70.2]
list1[1]=[3]#索引为1的元素值改变了['abcd',[3],2.23,'Jiaoyu',70.2],即用列表替换元素,本质还是一样的
#改变子列表
#list[0:1]=0#这种写法是错误的,因为0属于数值型,list[0:1]是子列表,不能赋值。特殊情况:该索引位置的元素是列表类型可以
list1[2:2]=[9,10]#得到的是空列表,将新列表[9,10]放在索引为2这个元素的前面,结果['abcd',786,9,10,2.23,'Jiaoyu',70.2]

列表提供的一些操作方法:
以ls=[1,2,3,4,5,6]为例,所有的都是基于原列表操作得到的结果

方法描述举例
ls.append(x)在列表ls最后增加一个元素x[1,2,3,4,5,6,x]
ls.insert(i,x)在列表第i位置增加元素x,理解在索引位置元素的前面插入i等于2时[1,2,x,3,4,5,6];i等于-2时[1,2,3,4,x,5,6]
ls.clear()删除列表中所有元素[]空列表
ls.pop(i)将列表ls中第i项取出,并从ls中删除该元素i=2时[1,2,4,5,6];i=-2时[1,2,3,4,6]
ls.remove(x)将列表中出现的第一个元素x删除如果不存在的话会报错
ls.reverse()将列表ls中的元素反转[6,5,4,3,2,1]
ls.copy()生成一个新列表,复制ls列表所有元素注意原列表是不变的

总结:字符串、列表、元组

  • 截取如果超出索引也没事,会完整的输出全部。因为如果str=“123”,那么截取全部可以str[0:]或者str[0:3]或者大于3都行。
  • 步长为负数还有点疑问
  • 因为尾下标取不到,如果头下标和尾下标一样,那么得到的是空字符串/列表/元组
  • -1表示倒数第一个,-2倒数第二个,以此类推;0第一个,1第二个,以此类推。

5、集合set
定义:由一个或多个形态各异的大小整体组成,构成集合的事务/对象称作元素/成员。
形式:{}的元素以逗号隔开。可变性,唯一性(不可重复,如果定义了重复的那么会自动检测并删除),无序性,因此没有索引和位置的概念,可以动态地增加/删除,元素类型只能是不可变的数据类型(数值、字符串、元组)
定义空集合:set(),只能用这个,并且输出空集合的表示也是set()。而{}表示空字典。
基本功能:测试成员关系、删除重复元素

6、dictionary(字典)
定义:一种映射类型,{}标识,无序性,元素是键(key) : 值(value)对的集合。通过键取值,与列表通过偏移取值不一样!
键的特点:唯一性,元素类型时不可变类型(数值、字符串、元组)
定义空字典:{}、map()。注意创建字典的方式map1=map()
常用的操作方法:

  • 取键、取值:字典.keys()、字典.values(),得到的类型分别是dict_keys、dict_values类型
  • 以键取值:字典[键名]
  • 连接+操作
dict={}
dict=dict()
tinydict={'name':'Jiaoyu','code':1,'site':'www.Jiaoyu.com'}
print(tinydict['one'])
print(tinydict[2])#得到键为2的值
print(tinydict)#得到完整的字典
print(tinydict.keys())
print(tinydict.values())

字典提供的一些操作方法:<字典变量>.<方法名称>(<方法参数>)
一般键值对都是以元组的形式(键,值),多个键值对组成列表,该列表又放在元组中。多个单独的键/值,组成列表,放在元组中
以d={‘张三’:100,‘李四’:99,‘王二’:66}为例,所有的都是基于原字典操作得到的结果

方法描述举例
d.keys()返回所有键的信息([‘张三’,‘李四’,‘王二’])类型时dict_keys
d.values()返回所有值的信息([100,99,66])类型时dict_values
d.items()返回所有的键值对([(‘张三’,100),(‘李四’,99),(‘王二’,66)])
d.get(key,default)键存在返回相应值,否则返回默认值default由键取值
d.clear()删除所有的键值对{}空字典
d.pop(key,default)键存在就返回相应的值,否则返回默认值default以键删值
d.popitem()随机从字典中取出一个键值对,以元组(key,value)形式返回,同时将该键值对从字典中删除(键,值)类型元组tuple

3.2 运算符&表达式

1、算术运算符
加减乘除取余:+、-、* 、/、%,除是向0取整,使用int也是向0取整
向下取整://,而在VB中则表示向0取整,这点要注意,java/c中都没有这个运算符
幂: * *,表示x的y次方
2、比较(关系)运算符:运算结果是true、false,编译运行存储在计算机中是1,0。这一点与二进制符号位0正1负做一个区分
等于、不等于:==、!=(<>也可以,VB中就是这个)
大于、小于、大于等于、小于等于:>、<、>=、<=
3、赋值运算符
简单的赋值:=
与算术运算符结合=,举例:a += b表示a=a+b
4、逻辑运算符

逻辑运算符逻辑表达式描述boolean false、true变量
andx and y布尔"与",同真为真,短路性质同true为true,但是如果第一个是false,第二个就不会再去判断了同非0为非0,但是如果第一个是0,第二个就不会执行
orx or y布尔"或",同假为假,短路性质同false为false,但是如果第一个是true,第二个就不会执行同0为0,但是如果第一个是非0,那么第二个就不会去执行
notx not y布尔"非",取反true取反为false,false取反为true0取反为true,非0取反为false
i=2
print(0 and i+1)#因为短路性质,i+1不会执行
print(i)#i还是2

5、运算符的优先级

运算符描述
**指数
* / % //乘除取余和取整数(向下)
+ -加法、减法
<= < > >=比较运算符
<> == !=等于(比较)运算符
= %= /= //= -= += *= **=赋值运算符
not and or逻辑运算符

四、常用的函数&内部函数

4.1 输入输出函数

1、input()函数:无论用户输入的是数字还是字符,统一以字符串类型返回结果
语法:<变量>= input(<提示性文字>)
2、eval(s):去掉字符串s最外侧的符号,并按照python语句方式\去掉引号后的字符内容
语法:<变量>=eval(<字符串>)
两者搭配使用:获取用户输入的数字
语法:<变量>=eval(input(<提示性文字>))

3、print()函数:对于字符串,去掉两侧的引号,输出结果是可打印字符。对于其他类型,直接输出表示,作为打印字符。
特点:可以接收多个参数,默认换行
不换行:print(<待输出内容>,end=“<增加至输出结尾>”)

a=eval(input("请输入整数:"))
print("输出的整数是:",a,end="\t")
print("!")

4.2 常用的内部函数

1、数值运算函数
绝对值:abs(x):求x得绝对值
除余:divmod(x,y):计算除//余%,输出为元组类型(x//y,x%y),其中//向下取整
幂运算:pow(x,y):幂运算,等价于x**y
幂运算:pow(x,y,z):幂运算,等价于x ** y%z
四舍五入:round(x)或round(x,d):对x四舍五入,保留d位小数,如果没有d则返回四舍五入得整数值
最大值:max(x,y,…)
最小值:min(x,y,…)
2、字符串处理函数
长度/个数:len(x),也可以返回其他组和类型得元素个数
转为字符串型:str(x),x可以是任意类型,相当于数据类型转换
ASCII码与字符:chr(x)、ord(x)。如chr(65)表示’A’,ord(‘a’)表示97
十六进制的小写字符串形式:hex(x)。比如hex(45)表示0x2d
八进制的小写字符串形式:oct(x)。比如oct(45)表示0x55
3、类型判断和类型间转换函数
查看类型:type(x)
int()、float()、str()、list()、dict()、tuple()
eval()是针对去除外面两侧的引号的。

int(-1.2)#向0取整
print(-3/2)#结果为-1,向0取整
print(-3//2)结果为-2,向下取整
int('1.2')#1.2
int('-1.2')#报错
int('-2')#-2
float('-1.2')#1.2

4.3 自定义函数&调用

1、定义函数规则:

  • def 函数名()
  • 传入的参数/自变量必须在()中,即形参
  • 函数第一行,可以选择性的使用文档字符串——用于存放函数说明
  • 缩进和 : 配合是方法体
  • return [表达式]结束函数,选择性地返回一个值给调用方,省略return,相当于返回None
def functionName(parameters):"函数_文档字符串"方法体return [repression]#return可以省略,就是返回None

2、调用函数
函数名(参数),即可调用

#定义函数
#!/usr/bin/python3
def max(a,b):ifa>b:return a
else:return b8=4
b-5
#调用函数
print(max(a,b))

五、选择与循环结构

Python中没有switch…case语句

5.1 条件语句

if…else条件语句

if(表达式):语句1
else:语句2

if…elif条件语句

if (表达式1):语句组1
elif(表达式2):语句组2
......
elif(表达式n):语句组n
else:语句组m

5.2 循环语句

结束循环方式:break、满足条件,continue表示结束本次循环。

while循环
一般初始值在while前面的语句中赋值

while(表达式):循环体
#while循环举例
counter=1
while(counter<4):#逻辑语句counter++

for循环语句
起始值、步长可以省略。终止值和逗号不能省【java中是分号不能省】
变量范围[起始值,终止值),终止值取不到,VB中是可以的,这是由循环顺序决定的

for 循环变量 in (<起始值0>,终止值,<步长1>):循环体

六、最后总结区别&注意点(Java/Python/C/VB)

1、关于0、1表示正负数,true、false
在计算机存储的二进制中,符号位:0表示正数、1表示负数
布尔类型:0表示False,1表示True,只有VB中的-1表示True

VB语言索引从1开始,其它语言都是从0开始。

2、关于向下、向0(也叫只保留整数)取整:

  • 在位运算符中a右移>>4可以理解为a除以2的4次方,结果是向下取整
  • 在java/c/c++中:
    • int a = -16/3,结果是-5,向0取整。功能和int()强转是一样的功能。
    • float/double b = -16/3,在精度范围内就是小数,超出的小数位四舍五入
  • 在python中,/表示除,int(x)向0取整,//表示向下整除
  • 在VB中,
    • Dim a As Integer; a = -16/3,向下取整;Int(-1.2)向下取整
    • Dim a As Single/Double; a= -16/3,小数位可以四舍五入
    • Dim a As Integer; a = -16\3,表示向0取整,Fix(-1.2),向0取整。

理解:VB对于int()的底层实现与其他语言是不一样的,其他语言相当于强转

3、运算符的一些区别

  • 只有VB是"=“即表示逻辑运算符又表示赋值,其他的都用”=="做一个区分
  • 取余/模:VB中Mod,其他%
  • 字符运算:VB中+、&(+有数值/数值型字符串/字符型表示数值运算,但是如果一边数值一边字符串就会报错,要么就全是字 符串型就表示连接;&不管是什么都表示连接)
  • 逻辑运算符:VB/python中not、and、or;C中&&、||、!,java中&、&&、|、||、!、~(异或)
  • 不等于:VB中<>,C/java中!=,python中两种都行
  • 幂值:VB中Exp(x),表示e的x次方,C中pow(a,b),python中pow(a,b),或者a**b
  • 自然对数值:VB中Log(x)表示lnx,C中log(x)
  • python里面没有++、–运算符、switch…case结构,其他的语言都有

4、关于标识符的命名规则:变量、方法、类等要素命名时使用的字符序列。即凡是自己可以起名字的地方都叫标识符

  • C中:大小写字母、数字、下划线,第一个字符不能是数字,区分大小写
  • Python:大小写字母、数字、下划线、汉字,第一个字符不能是数字,区分大小写
  • Java:大小写字母、数字、下划线、$,第一个字符不能是数字,区分大小写
  • VB:字母、数字、下划线、汉字,第一个字符不能是数字、汉字,必须以字符、下划线开头

总结:除了VB不能是数字、汉字,其他的是不能是数字,python、VB可以包含汉字,其他都没有

5、容易搞错的写法:Java:true、false、String

6、为多个变量同时赋值

  • Java/C/C++中:①int a = 10, b = 10, c = 10;②int a, b, c; a = b = c = 10;
  • Python中:同步赋值语句的特点(作用:同时给多个变量赋值,简化互换变量的值)
    • a,b=1,2
  • VB中:Dim a, b as Long;表示a为变体型,b为Long。

7、Java中print、println()只接受一个参数/0
Python中可以接受多少个

8、关于语句块
python提供 缩进与 : 配合
c/java中提供()与{}配合
VB中提供Then、End配合

9、关于if、else
python中if…elif
c/java中else if,是带空格的
VB中ElseIf() Then

10、switch…case
VB中Select Case 测试表达式
Case 表达式1
语句组1

End Case

C/Java中:
switch(){
case 常量表达式1:
语句组1
default:
语句组n
}
Python中没有

11、循环
python中
for 变量 in 集合(<起始值0>,终止值,<间隔数1>)
C/Java中
for(;😉{
}

12、几种语言的运算符汇总
VB
C语言

Python
Java

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/1799.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux 系统IO函数之stat、lstat函数

1、stat函数 要点&#xff1a; int stat(const char *pathname, struct stat *statbuf); 作用&#xff1a;查看文件的信息 man 2 stat/return value1、stat结构体&#xff1a; 2、sturct stat 结构体中 st_mode 的含义&#xff08;文件的类型和存取的权限&#xff09;: st_mo…

华媒舍:百度竞价排名如何提升点击率

在网络推广中&#xff0c;提升点击率是十分重要的。运用百度搜索引擎广告是一种常用的提升点击率的形式。而百度竞价推广是搜索引擎所提供的一种付费流量方法&#xff0c;根据提高网站在搜索结果中的排名&#xff0c;可以有效提升点击率。下面我们就详细介绍如何运用百度竞价推…

每日OJ题_其它背包问题①_力扣474. 一和零(二维费用01背包)

目录 力扣474. 一和零 解析代码 代码优化 力扣474. 一和零 474. 一和零 难度 中等 给你一个二进制字符串数组 strs 和两个整数 m 和 n 。 请你找出并返回 strs 的最大子集的长度&#xff0c;该子集中 最多 有 m 个 0 和 n 个 1 。 如果 x 的所有元素也是 y 的元素&…

【Linux】权限(shell运行原理、概念,Linux权限)

&#x1f308;个人主页&#xff1a;秦jh__https://blog.csdn.net/qinjh_?spm1010.2135.3001.5343&#x1f525; 系列专栏&#xff1a;https://blog.csdn.net/qinjh_/category_12625432.html 目录 shell命令以及运行原理 创建和删除用户 创建新普通用户 删除用户 Linux权…

Unity中的UI系统之UGUI

目录 概述UGUI基础——六大基础组件六大基础组件概述Canvas画布组件CanvasScaler画布缩放控制器组件必备知识恒定像素模式缩放模式恒定物理模式3D模式 Graphic Raycaster图形射线投射器EventSystem和Standalone Input ModuleRectTransform UGUI基础——三大基础控件Image图像控…

混淆原理与实践指南

引言 &#x1f680; 在当今的软件开发领域&#xff0c;保护代码的安全性和保密性变得越来越重要。混淆&#xff08;Obfuscation&#xff09;技术作为一种保护代码的手段&#xff0c;在应对逆向工程和代码盗用方面发挥着关键作用。本文将深入探讨混淆的原理&#xff0c;以及如何…

javaWeb项目-财务管理系统功能介绍

项目关键技术 开发工具&#xff1a;IDEA 、Eclipse 编程语言: Java 数据库: MySQL5.7 框架&#xff1a;ssm、Springboot 前端&#xff1a;Vue、ElementUI 关键技术&#xff1a;springboot、SSM、vue、MYSQL、MAVEN 数据库工具&#xff1a;Navicat、SQLyog 1、Springboot框架 …

[lesson45]不同的继承方式

不同的继承方式 不同的继承方式 C中支持三种不同的继承方式 public继承 父类成员在子类中保持原有的访问级别 private继承 父类成员在子类中变为私有成员 protected继承 父类中公有成员变为保护成员&#xff0c;其他成员保持不变 遗憾的事实 一般而言&#xff0c;C工程项目…

镭眸T52激光雷达:无人叉车定位及避障新选择

在传统物料搬运领域&#xff0c;叉车虽扮演了重要角色&#xff0c;但人工操作的局限性——高昂的人力成本、有限的操作效率以及潜在的安全隐患&#xff0c;一直是企业面临的难题。随着劳动力成本的不断攀升&#xff0c;企业对降低成本、提升效率、减少安全事故的需求愈发迫切。…

【iOS开发】(四)react Native第三方组件五个20240419-20

react native 外的 第三方组件 目录标题 react native 外的 第三方组件&#xff08;一&#xff09;与rn核心组件的使用步骤区别&#xff1a;&#xff08;二&#xff09;第三方组件概览1 WebView2 Picker3 Swiper4 AsyncStorage5 Geolocation6 Camera (三)详细学习1 WebViewCoco…

Navicat 干货 | 掌握 PostgreSQL 规则语法

PostgreSQL 规则提供了一种强大的机制&#xff0c;控制查询执行并在数据库内部实施数据操作。理解规则的语法和用法对于有效利用其功能至关重要。在上周的文章中&#xff0c;我们探讨了 PostgreSQL 规则的工作原理及其与触发器的区别。今天的文章将使用免费的 “dvdrental”示例…

3.AlexNet--CNN经典网络模型详解(pytorch实现)

看博客AlexNet--CNN经典网络模型详解&#xff08;pytorch实现&#xff09;_alex的cnn-CSDN博客&#xff0c;该博客的作者写的很详细&#xff0c;是一个简单的目标分类的代码&#xff0c;可以通过该代码深入了解目标检测的简单框架。在这里不作详细的赘述&#xff0c;如果想更深…

如何使用rdtsc和C/C++来测量运行时间(如何使用内联汇编和获取CPU的TSC时钟频率)

本文主要是一个实验和思维扩展&#xff0c;除非你有特殊用途&#xff0c;不然不要使用汇编指令来实现这个功能。扩展阅读就列出了一些不需要内联汇编实现的 写本文是因为为了《Windows上的类似clock_gettime(CLOCK_MONOTONIC)的高精度测量时间函数》这篇文章找资料的时候&…

不同版本vue安装vue-router

vue-router 是vue官网发布的一个插件库&#xff0c;单页面路由。vue 和 vue-router 之间版本也需要对应。 vue2.x版本使用vue-router3.x版本&#xff0c;vue3.x使用vue-router4.x版本&#xff0c;根据自己的需要选择合适的版本 1、可以在安装前查看vue-router版本&#xff0c;…

陈奂仁联手 The Sandbox 推出“Hamsterz Doodles”人物化身系列

全新人物化身系列结合艺术与实用性 开创元宇宙新篇章 著名亚洲唱作歌手兼香港电影金像奖得主陈奂仁携手 The Sandbox&#xff0c;兴奋地宣布推出新的元宇宙人物化身系列 —— Hamsterz Doodles 仓鼠涂鸦。 陈奂仁在 The Sandbox 推出 Hamsterz Doodles 系列&#xff0c;将艺术与…

波士顿动力抛弃液压机器人Atlas,推出全新电动化机器人,动作超灵活

本周&#xff0c;机器人科技巨头波士顿动力宣布液压Atlas退役&#xff0c;并推出了下一代产品——专为实际应用而设计的全电动Atlas机器人&#xff0c;这也意味着人形机器人迈出了商业化的第一步。 Atlas——人形机器人鼻祖 Atlas&#xff08;阿特拉斯&#xff09;这个名字最…

STM32F407,429参考手册(中文)

发布一个适用STM32F405XX、STM32F407XX、STM32F415XX、STM32F417XX、STM32F427XX、STM32F437XX的中文数据手册&#xff0c;具体内容见下图&#xff1a; 点击下载&#xff08;提取码&#xff1a;spnn&#xff09; 链接: https://pan.baidu.com/s/1zqjKFdSV8PnHAHWLYPGyUA 提取码…

计算请假时间,只包含工作时间,不包含中午午休和非工作时间及星期六星期天,结束时间不能小于开始时间

1.计算相差小时&#xff0c;没有休息时间 computed: {// 计算相差小时time() {let time 0;if (this.ruleForm.date1 &&this.ruleForm.date2 &&this.ruleForm.date3 &&this.ruleForm.date4) {// 开始时间let date1 this.ruleForm.date1;let y date…

[笔试训练](二)

004 牛牛的快递_牛客题霸_牛客网 (nowcoder.com) 题目&#xff1a; 题解&#xff1a; 使用向上取整函数ceil()&#xff0c;&#xff08;记得添加头文件#include<cmath>&#xff09; #include <iostream> #include <cmath> using namespace std;int main(…

ArrayList与顺序表(1)

前言~&#x1f973;&#x1f389;&#x1f389;&#x1f389; hellohello~&#xff0c;大家好&#x1f495;&#x1f495;&#xff0c;这里是E绵绵呀✋✋ &#xff0c;如果觉得这篇文章还不错的话还请点赞❤️❤️收藏&#x1f49e; &#x1f49e; 关注&#x1f4a5;&#x…