python是一种导包很多,语法很随意的语言。所以我们掌握基本语法即可~
python 学习网站
Python 教程https://www.w3school.com.cn/python/index.asp
一、python运行
在桌面创建一个 .py 文件,可先创建记事本,然后更改后缀 eg ceshi.py
接着在终端输入python ceshi.py 运行即可~
二、数据类型
列表、元组、集合
lst = [1,2,3,4]
tuple = (1,2,3,4) #数据不可更改
set = {1,2,3,4}
可利用集合的不重复性实现list的去重,通过强制类型转化即可,注意小写
三、基本输入输出
1、输出
#可输入数字、字符、字符串
print(1)
print('Apmcm')
print("Apmcm")
print函数 输出时会自动换行,为避免其换行,可加入参数 end
print("a+b = ",end='') #单引号间无空格
两个数直接放print输出,会自动加空格
print(a,b)
2、输入
x = input() #输入一整行
print(x)
2.1 逐行输入
a = int(input())
b = int(input())
print(a+b)
2.2 同行输入
a,b = input().split(' ') #以空格分隔
#a,b = input().split(',') #以 , 隔开
a = int(a)
b = int(b)
print(a+b)
四、结构
4.1 if-else 结构
if a > b :
print('a > b')
elif a < b :
print('a < b')
else:
print('a = b')
4.2 循环结构
for循环
lstNum = [1,2,3,4,5]
lstTest = []
lstName = ['Apmcm','service','MathorCup','ICM','MCM']
sum=0
for i in range(0,len(lstNum)):
sum = sum+ lstNum[i] #有些python不支持 +=
lstTest.append(i)
print(sum,len(lstTest))
print(lstTest)
while循环
sum=0
i=1
while sum <100 :
i=i+1
sum=sum+i
print(sum,i)
五、导入包
import math
import random as ra #取个名字
from math import sin #从math导出sin
六、函数
sum 求和函数
x = sum([i if i%2==1 else 0 for i in range(1,5)])
print(x)
lambda 匿名函数
x = lambda a : a+10
print(x(5))
自定义函数
def Add(a,b):
c = a + b
d = a * b
return c,d
print(Add(3,4))
def Add(a,b):
c = a + b
d = a * b
return c,d
a,b=Add(3,4)
print(a,b)
七、实战演练
题目详情 - 第3章-3 输出字母在字符串中位置索引 (pintia.cn)
输入一个字符串,再输入两个字符,求这两个字符在字符串中的索引。
输入格式:
第一行输入字符串
第二行输入两个字符,用空格分开。
输出格式:
从右向左输出字符和索引,即下标最大的字符最先输出。每行一个。
输入样例:
在这里给出一组输入。例如:
pmispsissippi
s p
附上代码:
一、改变输出
data = input()
a,b=input().split(' ')
i=len(data)-1
while i>=0 :
if data[i]==a :
print(i,a)
elif data[i]==b :
print(i,b)
i=i-1
二、改变数组
data = input()
data = data[::-1]
a,b=input().split(' ')
for i in range(0,len(data)):
if data[i]==a :
print(len(data)-i-1,a)
elif data[i]==b :
print(len(data)-i-1,b)