主要是针对于学过c++,快速了解上手Python基础语法,本章节主要针对面向过程。
1.定义:
- python十分方便的一点就是不用定义数据类型所以直接写:a=......即可(而且不用写分号)
- 数据类型就不赘述了...
- 注意的是,python是非常注意缩进格式的
- python不需要写分号
2.输入:
- 注意输入的类型是字符类型,所以如果是整数类型的话需要加int
x=input()
x=int(input())
3.输出:
- 值得注意的就是格式化的输出方式,以及小数(%.4f------保留4位小数)的输出。
- (和c++其实只有一些细微差距而已)
#字符串的格式化输出
name='钟一淼'
age=18
#占位符的问题,其实本质上和c++没有区别
print('我是%s,我今年%d岁了'%(name,age))
#输出 宽度
print('%10d'%99)
#精度
print('%.3f'%3.1415926)
#注意%的位置,相比对c++将“,”换成了“%”而已
- 注意:python的字符串可以用单引号表示。
- “%”链接后面的数
4.运算
逻辑运算
&&------>and
||------>or
x=int(input())
if x>=0 and x<=100:
print("adc")
if x<100 or x>1000:
print("adcddddddd")
- 比较运算符都是一样的就不赘述了
5.顺序执行
上述例子上写过了,就是没有括号,然后c++中的花括号用“:”来替代
与c++不同的地方就是else if替换成了elif
if 判断条件:
elif 判断条件:
else:
6.循环程序
- 很方便的是可以直接遍历列表,元组和字典,字符串,数字,暂时先简单介绍一下,主要的方法写在每个容器的使用方法里面。
for i in range(1,10):#从整数1遍历到整数9
if i!=0:
for j in range(1,i+1):
print('%d*%d=%d'%(j,i,i*j),end=" ")#格式化的输出
print()
7.字典(类似于map)-------可变的序列
score={'张三':100,'李四':150}
print(score)
#为什么不早说脚本路径是自己的文件呢,呜呜呜
#list=[10,20,30,40]
#list.insert(2,300)
#p#rint(list)
#字典的输出问题
for item in score:#指向的是键值对
print(item,score[item])
for keys in score.keys():#指向的是键值对的第一个
print(keys)
for value in score.values():#指向键值对的第二个
print(value)
值得注意的就是字典的组合问题
A={'a','b','c'}
B={100,200,300}
d={A:B for A,B in zip(A,B)}
print(d)
8.元组(不可变的序列)
- 用”()“表示,虽然里面的元素不可以直接的像数组一样改变,但是里面的列表可以用列表的方法进行更改。
# #元组练习
#元组是不能更改的序列
A=(1,2,3,[40,50])
print(A)
for item in A:
print(item)
# #item 代之元素键值
- 其他的一些使用方法(里面的一些特定函数),查询元素索引,查询元素个数。
- 元组不能进行增删改查!!!
9.列表
#备注一下列表的增删改查
#因为这里有许多比c++需要注意的地方,所以需要事先标注出来
#可以追加序列,也可以追加单个数值!!!!
s1=[1,2,3,4,5]
#insert需要添加位置
s1.insert(2,8)
print(s1)
s1.append(99999)
print(s1)
s1.extend([33333333,4444444])
print(s1)
#寻找列表某个元素的,并返回它在列表中的位置
print(s1.index(99999))
#返回该数在列表中的个数
print(s1.count(6))
#列表中的修改
#反转函数和排序函数都是一样的跟c++,修改就是类似于数组的修改方式
s1.reverse()
print(s1)
s1[5]=56565656565
print(s1)
10.集合(set)
- 类似于c++中的set
s=set('python')
print(s)
#增加
s.add(80)
print(s)
s.update([400,300,200])
print(s)
#删除
s.discard(80)
print(s)
s.pop()
print(s)
# 集合的修改与查询!!!
# 集合的差集,并集与交集,对称差集
# 集合生成式
ad={i*i for i in range(4)}
print(ad)
s=set('python')
print('p' in s)
print('aaa' in s)
print('aaa' not in s)
s1={1,2,3,4,5,6}
s2={5,6,7,8,9,10}
print(s1&s2)
print(s1|s2)
print(s1-s2)
print(s1^s2)
- 注意序列里面增删改查的函数,其实都是差不多的。
11.字符串的基本操作
- python中的字符串可以用单引号表示
#字符串中元素查询
s='ina_ina'
print(s.index('in'))
print(s.rindex('in'))
print(s.find('in'))
print(s.rfind('in'))
#字符串的劈分函数!!!
s='hello!world!ina'
print(s.split(sep='!'))
print(s.split(sep='!',maxsplit=1))
print(s.rsplit(sep='!',maxsplit=1))
#字符串的合并与替换
# 无语住了,他们也太卷了吧!
# 合并
lst=['a','b','c']
print('!'.join(lst))
yuan={'aaaa','bbbbb'}
print('%'.join(yuan))
#替换
student='python,python,c++'
print(student.replace('python','JAVA',2))
#字符串的切片操作
#切片操作的话也是比较重要的内容
#果然不复习,一个暑假就忘的干干净净呀
sss='abcdefghigk'
ina=sss[1:10:1]#1是起始位置,10是终止位置,最后一个1是步长
#遍历字符串的方法
for i in ina:
print(i,end=" ")
print(sss[1:5:1])
print(sss[::2])
print(sss[-6::-1])
- 注意:字符串中的函数操作是很多的,知识举出一些常用的函数操作,可以多练习,其次就是说在算法中一些操作也更加方便。
12.函数的基本操作
#基本函数构造形式
def fun():
print("我爱你啊")
fun()
#个人觉得学过c++形参实参的问题就不需要写了
#值得注意的点是python函数的返回值,c++返回值只能返回一个,python返回值可以返回多个,但是返回的类型是元组
#举个例子(关于返回值的一些问题)
def fun2(num):
test1=[]
test2=[]
#注意引号(循环和if与c++之间的区别)
for i in num:
if i%5:
test1.append(i)
else:
test2.append(i)
return test1,test2
list=[10,20,30,33,34,36]
#返回值为元组数据
print(fun2(list))
总结:
- 中间可能有一些细节在学习的时候没有多注意,但是在c++的学习当中基本的原理应该是都了解了的,所以是列举了一些在面向过程方面与c++不太一样的地方,而且python的函数应用会更加广泛一些,细节的话之后也会慢慢补上,下一章的话就会总结一下python面向对象与c++的相同点以及不同的需要注意的地方,感谢观看!