Python入门基础知识(python零基础入门学的内容都有哪些?)

网友投稿 227 2022-09-06


Python入门基础知识(python零基础入门学的内容都有哪些?)

1 问题

最近有两个高中同学断断续续问我一些python题目。本文为初学者介绍一些Python基础知识,包括输入,输出,有序,无序序列的相关操作,函数的使用等,并出示相关的例题方便更好的理解。

2 方法

这里直接展示代码,注释部分对相关代码进行解释。

代码清单 1

# 1.拆分数据输入#使用map()与split()将输入数据进行拆分,这两组合会自动忽略空格a,b,c=map(int,input().split())value=b*2-4*a*cprint(value)#1.1 break与continuestr="Hello World"s=''for i in str: s+=i if i=="W": break # 执行if语句后,跳出整个循环print(s)for i in range(10): if i==8: continue # 执行if语句后,跳出此次循环,接着下一次 print(i)#1.2 去掉输入前后的空格#strip():去掉元素前后方的空格,但中间的空格不去掉s1=input().strip()print(s1)#1.3 所输入即所得 eval()直接将字符串当作有效的表达式,(可以理解为暂时的去掉字符串的引号)test=eval(input()) # 尝试输入内容[1,2,3,4]或者{”张三":18}print(test)print(type(test)) # type判断数据类型# 2 输出# 2.1 格式化输出formata=50b=168c=a/b*100print("hello{0},你的成绩提高了{1:.0f}%".format("小明",c)) #所有的(包括%)都要写在”“里面print("hello{0},你的成绩提高了{1:.2f}%".format("小明",c)) #所有的(包括%)都要写在”“里面print("hello%s,你的成绩提高了%d%%" % ("小明",c)) # 用两个%%来表示%的含义# 2.2 以end输出#python默认输出会换行,使用end=" "就可以不换行输出 ”“里面就是输出连接符print("cxj",end="")print("不挂科",end="加油啊") # 可以理解为就是一个拼接技术'''print()# 3. 列表,字典,元组,集合# 创建空列表empty_list=[]empty_list=list()# 创建空元组empty_tuple=()empty_tuple=tuple()# 创建空集合empty_set=set()# 创建空字典empty_dict={}empty_dict=dict()#往集合中添加元素 1 :empty_set.add(1)# 3.1 列表a=["刘六","陈七","李四","张三","d","j"]b=["张三","王五"]# 增加,插入a.insert(2,"薛之谦") # 在二号位插入元素'薛之谦'a.extend(b) #对列表a再追加一个列表ba.append(78) #对列表在末尾添加元素print(a)# 删除a.pop(1) # 删除下标为1的元素,不写就默认为最后一个元素a.remove("张三") # 删除某个特定的元素,指名道姓了# 修改a[3]="罗永浩" # 修改即直接对列表中某个元素重新赋值操作print(a)# 查询 列表查询元素没有get()方法,字典才有c=a.index("张三") #返回'张三'的下标print(c)# 判断某元素是否在列表里print("张三" in a) # 返回布尔值 Truea.clear() #清空列表print(a) # 输出一个空列表# 切片,包头不包尾 使得str[:2]+str[2:]==strstr=['i', 'am',' a','student']e=str[:] # 啥也不写,默认从0开始到结尾,步长为1e=str[:2] # 取出 0,1,下标元素e=str[:3:2] # 步长为2e=str[-1:0:-1] # 从-1位置到不包括0的位置 (不要求start>stop) 结果:['student', ' a', 'am']e=str[::-1] #反向提取 结果: ['student', ' a', 'am', 'i']print(e)# 3.2 字典# 3.2.1 字典的get()方法查询元素dict={"张三":43}print(dict.get("张三",43)) # 要有两个参数,第二个随便写,为了没查询到元素时不报错d=dict.get("张三",78) # 查询到了key就返回它的valued2=dict.get("李四",788) # 没查询到元素时不报错,返回788print(d)print(d2)# 3.2.2 字典中的某个值可以表示为:dict[key] key是包含了""的,一个完整的"name","age"才叫keystudent={"name":"张三","age":18,"gender":"男"}print(student.get("name","good"))print(student.get("grade","sorry,没有此元素")) #没有grade,因此返回第二个参数'good',他是不报错的print(student["gender"]) # 注意要加"",不然会错# 3.2.3 使用update()可以一次更新多个元素student.update({'math':99,"英语":100,"python":100})print("math:",student["math"])# 3.2.4 删除元素 del/popdel student["age"]print(student)# pop() 用变量来接收pop的值,不用变量接收就不会返回该值k=student.pop("math") # 返回99student.pop("python") #返回删除'python'后的列表print(k)print(student)# 3.2.5 迭代# 以键循环:只迭代出key,没有valuefor keys in student: #没有加属性,就只遍历出key print(keys)# 键,值 循环for key,values in student.items(): print(key,values)#只循环keyfor key in student.keys(): print(key)#只循环valuefor i in student.values(): print(i)# 3.3 元组tup1=('张三','李四',"王五")print(tup1[2])#tup1[0]="六二" #xxxxxxxxxx错误的,元组内元素不能改变,只读不写# 3.4 排序# 3.4.1 sort() / sorted()顺序# sorted() 可以将字符串排除分隔并排序s='7506'a=sorted(s)print(a)# sort()会改变原来列表的顺序,不用创建变量来接收返回值name=['z',"b","h"]name.sort()print(name)# sorted()不会改变原来列表顺序,返回排序后的版本,需要创建一个变量来接收返回值num=[2,5,3,99,6]num=sorted(num)print(num)# 3.4.2 倒序# reverse() #会改变原来列表顺序,不用创建变量来接收返回值name=['a',"b","h","j"]name.reverse()print(name)# reversed() 需要创建一个变量来接收返回值. 也可以用[::-1]来颠倒,但不是排序num=[34,65,78,33,23]newnum=reversed(num)print(list(newnum)) #需要转换成为列表# 在参数中申明sort的方法num=[34,65,78,33,23]num.sort(reverse=True) #不用创建变量来接收返回值print(num)num.sort(reverse=False) #不用创建变量来接收返回值print(num)num=[1,2,4,6,3]print(num[::-1]) #[3, 6, 4, 2, 1]'''# 去重,利用set()得到的返回值是集合,要得到列表需要再加一个list转换num_list=[2,3,4,2,6,3]print(set(num_list))print(list(set(num_list)))# 4.循环与条件判断# 4.1 for in 循环for _ in range(1,10): # 注意参数取值范围,前开后闭 print(_)# 4.2 while 循环happiness=0while happiness!=22: happiness+=1 # 一定要有使得循环趋于结束的条件,否则会进入死循环 print("祝你好运")# 4.3 条件判断# 4.3.1 判断输入的年份是否为闰年year=int(input("输入年份"))if year%400==0 or (year%4==0 and year%100!=0): print ("%s是闰年" % year)else: print ("{0}不是闰年".format(year))# 4.3.2 判断BMI值height=eval(input('输入你的身高')) # 以米为单位输入weight=eval(input('输入你的体重')) # 以千克为单位输入BMI=weight/height**2if BMI<18.5: print("过轻")elif 18.5<=BMI<25: print("正常")elif 25<=BMI<28: print("过重")elif 28<=BMI<32: print("肥胖")else: print("严重肥胖,注意健康")# 4.3.3 判断成绩等级grade=int(input('输入你的成绩'))dic={"优秀":[90,100], "良好":[80,89], "中等":[70,79], "及格":[60,69], "不及格":[0,59]}for k,v in dic.items(): if v[0]<=grade<=v[1]: print("你的成绩为%s,等级为%s" % (grade,k))# 5. 列表与字符串之间的转换#列表--->字符串:join()# 字符串--->列表: split()strs=["i","am","a","student"]a=" ".join(strs) # 以""里面的内容拼接print(a)#就只是把字符串又完整的放回列表strs="vcb,ji,ij,j,a,w" # 这一个字符串中有15个元素,其中','也算.str="hgfeiduy"b=strs.split(".")print(b)d=str.split(" ")print(d)# 6.列表推导式# 6.1 求平方squares=[x*2 for x in range(1,10)]print(squares)#2. 求偶数(带条件的列表生成式)num=[x for x in range(100) if x%2==0]print(num)# 6.2 最值/求和#对于可迭代对象,可以直接用sum(),max(),min()nums=[95,97,93,89,90]print(sum(nums))print(min(nums))print(max(nums))# 7. 函数def f(n): passdef f(*n): passdef f(**n): pass'''函数参数中n表示:传入的一个参数参数中带有*n表示:将参数以元组的形式导入(不限个数)参数中带有**n表示:将参数以字典的形式导入(不限个数)'''# 举两个例子:def f(num): sum=num+19000 return sumb=34print(f(b))def f(*num): sum=0 for i in num: sum+=i**2 return sumprint(f(2,9,6))# 8. ASCII与字符的互换# 使用ord()与chr()ascii=65print(chr(ascii))str="z"print(ord(str))# 9. 进制转换#将八进制的56转换为十进制print(int('56',8)) #56需要加上"",即转换为字符串#转换为二进制:binprint(bin(1024))#转换为八进制:octprint(oct(8732))# 用e代替10:print(1.23e9)# 10.一些常用的库# math库import math# 幂:pow(x,y)d=math.pow(3,4)print(d)# 平方根:sqrta=math.sqrt(9)print(a)# 全排列import itertoolss=["a","b","c"] # 对列表元素进行无重复组合l=list(itertools.permutations(s))print(l)# 对数组中元素计数nums = [10,6,5,8,5,8]from collections import Counternums = Counter(nums)print(nums) # Counter({5: 2, 8: 2, 10: 1, 6: 1})for i,item in nums.items(): print(i,item) # 会依次打印出统计元素后的元素,个数

3 结语

Python入门选手刚开始接触都会有一定难度,本文总结的内容较为基础,适合刚入门的新手,代码也比较多,也有的不全面,后面会继续完善,希望阅读之后的你在编程路上的兴趣和自信有所提高。

作者:陈相君


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:求简单类型的矩阵和(求矩阵的最简形矩阵)
下一篇:springboot内置tomcat调优并发线程数解析
相关文章

 发表评论

暂时没有评论,来抢沙发吧~