我在学校里学习的是C语言,后因一些项目需要python,于是又自学了python
为了减少看那些冗余内容的时间,特此整理一下python和C在编码方面不一样的地方
参考来源
你觉得自己这辈子都学不会编程?超超超基础Python课程,120分钟快速入门 【自学Python教程合集】_哔哩哔哩_bilibili
给大家说一个不用下载Python编译环经就可以编程训练的网站(不能向python代码中输入input等终端输入)https://www.runoob.com/try/runcode.php?filename=HelloWorld&type=python3
1、缩进
python与C最大的不同就是编译所使用的方法, C语言中每一句代码的结尾都需要;而Python代码是一行一行执行,不需要;而是使用缩进来表示代码块。
Python中的缩进一般是以4个字节为主而C语言是8个字节
Python中一个模块的界限是由这行前面的空格决定,而C用的是大括号{}
c语言:
main{
printf("hello!");
}
python:
print('hello!')
因为python代码中是一行一行执行的。如果这行代码比较长,一行放不下怎么办?我们可以使用反斜杠(\)来实现
t = a + \
b + \
c
2、注释
Python中单行注释以 # 开头,多行注释使用三个相同引号( 3个单引号或3个多引号)
# 单行注释 print ("Hello, Python!")
'''
多行注释,
使用三单引号。
'''
"""
多行注释,
使用双引号。
"""
/
3.变量的声明
C语言每次进行定义变量的时候,都需要声明其数据类型。
但是在Python中不需要声明其数据类型,但必须赋值。赋值的时候Python会自动给它分配相应的数据类型
a = 1 # 整型变量
b = 10.0 # 浮点型变量
c = "abc" # 字符串
Python3 中有六个标准的数据类型:Number(数字)String(字符串)List(列表)Tuple(元组)Set(集合)Dictionary(字典)。
4、print
1.字符串连接
使用 + 进行连接
星号 * 进行复制
2.单双引号的转义
在Python中单引号与双引号的区别并不大
在内容内有引号要和外部的引号有区别
print ("Hello,'Python!'")
若内部有多个引号需要用转义字符,用\表示
print ("Hello, Let\'s\"Go\"")
3.print 默认输出是换行的。如果要实现不换行在变量末尾加上 end=""
#如果要实现不换行:
print ('counter',end=" ")#Python3:在变量末尾加上 ,end=""
增加库函数
Python有3种方法增加库函数
第一种语句是将所有的函数都添加到里面,
第二种语句是交库函数中的部分函数添加到里面
第三种语句是将库函数的所有函数都添加在里面
字符串:
Python中的字符串用引号(“)括起来
字符串的截取的语法格式如下:
变量[起始值,结束值]
以 0 为开始值,-1 为从末尾
Python格式化字符串
1. Format
注意使用三引号,其中{0},{1}分别为format( , )里面相应的变量内容
或直接用关键词代替
2.f+字符串
其中直接将变量加入 { } 来代替所指代的内容
交互模式一般为cmd操作
列表
Python的列表有点像C语言的字符串,但并不是一样的
Python的列表用 [ ] 表示,但注意的是所输出的结果会加上括号
同样列表也可以像字符串一样用括号进行索引
变量[起始值,结束值]
以 0 为开始值,-1 为从末尾
列表也可以添加一些小函数
元组
元组(tuple)与列表类似,不同之处在于元组写在小括号(())里,元素之间用逗号隔开。
同样列表也可以像字符串一样用括号进行索引
变量[起始值,结束值]
以 0 为开始值,-1 为从末尾
列表与元组的不同之处
列表与元组的不同之处在于列表是可变的元组是不变的
列表可以用 .append 和 .remove 进行添加和减少列表里的内容而元组就不能使用这些
可以这样理解列表是可变的,元组是不可变的
字典
用”{ }”创建,是一个无序的 键(key) : 值(value)对集合。
键(key)必须使用不可变类型,且在同一个字典中,键必须是唯一的。
例如我建立一个字典其中里面的键为我所认识的人,值为我所认识人的电话号码
这样我就通过字典将电话号码和人进行连接了。
假如有这种情况我认识了有3个重名的人,但他们的年龄不一样,我这时就要在键上年龄以区分
下方图片为错误示范,字典中的键为可变类型——列表
以下为正确示范:这时23岁的张伟手机号就被赋值为15000000000
字典中的键为不可变类型——元组
可以用in来判断该键是否存在于字典中
循环
for是将可迭代对象依次赋给变量名
while是根据条件A判断是否为真假进行对行动B的执行
函数
def 定义函数,与c语言基本一样
小结
列表用 “[ ]” 标识类似 C 语言中的数组;
元组用 “( )” 标识。内部元素用逗号隔开。但是元组不能二次赋值,相当于只读列表;
字典用 “{ }” 标识。字典由索引 key 和它对应的值 value 组成
非数字型的共同点:都可以使用切片、链接(+)、重复(*)、取值(a[])等相关运算;
非数字型的不同点:列表 可以直接赋值,元组不可以赋值,字典按照 dict[k]=v 的方式赋值。
算数运算符
+-*/(加减乘除)
%(取模)
**(幂)
//(取整除)
注意:除法(/)总是返回一个浮点数,要获取整数使用(//)操作符
赋值运算符
==(等于)!=(不等于)>(大于)<(小于)>=(大于等于)<=(小于等于)
位运算符
&(按位与)|(按位或)^(按位异或)~(按位取反)<<(左移)>>(右移)
逻辑运算符
and(布尔与)or(布尔或)not(布尔非)
赋值运算符
=(赋值)+=(加法赋值)-=(减法赋值)*=(乘法赋值)/=(除法赋值)%=(取模赋值)
**=(幂赋值)//=(取整除赋值)
Python移除了:++(自增运算符)—(自减运算符)
成员运算符
in(如果在指定的序列中找到值返回 True,否则返回 False)
not in(如果在指定的序列中没有找到值返回 True,否则返回 False)
身份运算符
is (判断两个标识符是不是引用自一个对象)
is not (是判断两个标识符是不是引用自不同对象)
注:is 用于判断两个变量引用对象是否为同一个, == 用于判断引用变量的值是否相等。
优先级
[幂]>[按位取反]>[*,/,%,//]>[+ -]>[>>,<<]>[&]>[\^,|]>[<=,<,>,>=]>[<>,==,!=]>[赋值运算符]>[身份运算符]>[成员运算符]>[逻辑运算符]