python基础入门(超详细)_python语言基础-程序员宅基地

技术标签: python  python安全开发  后端  开发语言  

0x00 Python入门知识点

特来整理常见的top50入门知识点,初学者可以参考学习
1.input输出

password=(input("你的密码是:"))
print("你的密码是:",password)

2.输出类型

a = 10
print(type(a))   #int整形,str字符串
#强制类型转换
a = str("123")
print(type(a))

3.if语句:

#if elif else条件判断语句,if语句嵌套,注意缩进
a = 21
if a>1 and a<=15:
    print("是的")
elif a >15 and a<20:
    print("错的")
else:
    a >20 and a<30
    print("哈哈")

4.导入第一个库:随机数库

 import random
a = random.randint(1,7)
print(a)

5.经典猜拳游戏,理解随即库与缩进问题

import random
b = random.randint(0,2)
print(b)
#b = int(b)
a = input("输入你的数字:")
a = int(a)
if a > 3:
    print("数字错误")
elif  a == b :
    print("平手了")
elif a > b :
    print("你输了")
else:
    print("你赢了")
    pass

6.for语句学习

for i in range(3):
    print(i)
for a in range(1,5,1):
    print(a)

a = ['aa','bb','cc']
for i in range(len(a)):
    print(i,a[i])

7.经典联系:求1-100的和

n = 100
sum = 0
counter = 1
while counter <= n :
    sum = sum + counter
    counter += 1
    print("1到100的和为:%d"%(sum))

8.三种结束符的理解:

pass(空字符)  
continue(结束本次循环,但不结束大体的如while框架)   
break(结束整个循环,包括while)

9.字符串的转义

a = "nihao \"nihao"   #讲中间双引号转义输出print(a)b = """    nihao    haode"""print(b)   #三引号输出引号内所有字符串包括空格

10.切片

a = "wuhan"print(a[0:3:1])    #起始位置:结束位置:跨境值  0下标开始

11.反斜杠与直接显示原始字符串

print("nihao\nhaode")print(r"nihao\nhaode")

12.类型的判断

isalnum(字母加数字为真)isalpha(全字母为真)isdigit(全数字为真)isnumeric(只包含数字字符为真)

13.函数必懂知识点

#len(string)返回字符串长度#lstrip()去掉左边的空格#rstript()去掉字符串末尾的空格#encode(usf-8) 默认为UTF-8

14.列表的使用,for与while的遍历

a = ["xiaohuang","xiaoliu","xiaowang"]for i in a:    print(i)length = len(a)o =0while o <length:    print(a[o])    o +=1

15.数据的增加(append,extend,insert)

name = ["A","B","C"]zengjia = input("请输入:")aa = ["1","2"]name.append(zengjia)   #将整个列表添加,包括列表的【】name.extend(aa)   #讲列表中的元素增加到另外一个里面name.insert(1,"d")  #在列表的1号位,插入数据d#print(name)print(name)

16.数据的删除 (del,pop,remove)

name = ["A","B","C"]#del name[1]   #删除指定下标的对象#name.pop()  #删除数组组后的一位name.remove("B")   #删除指定的对象,但是执行一次后失效print(name)

17.数据的修改

name = ["A","B","C"]name[1]="D"   #指定数据下表修改print(name)

18.数据的查 (in / not in)

name = ["A","B","C"]na= input("输入查找的对象:")if na in name:    print("对象存在")else:    print("不存在")

19.数据的查找

#查找对象位置,不在范围内会报错,后面通过异常处理错误就行a = ["a","b","c","d","e"]b= [1,3,2,4]print(a.index("c",0,4))  #数据的查找

20.元素的操作

print(a.count("c"))a.reverse()#元素反转输出a.sort()  #元素升序输出print(a)a.sort(reverse=True)  #元素降序输出print(a)

21.#列表list取值嵌套

a = [["a","b"],["c","d"]]print(a[0][0])  #第一个列表内取值第一个值

22.练习:八个对象随机分配到三个库,应用random库

import randomoffices =[[],[],[]]names = ["a","b","c","d","e","f","g","d"]for name in names:    a = random.randint(0,2)    offices[a].append(name)#i = 1for office in offices:    print("分配个数为%d"%(len(office)),"-"*20)    #i += 1    for name in office:        print("对象名字:%s"%name)        #print("\n")        #print("-"*20)

23.#元组tuple的增删改查

a =(1,2,3,"aa")b =(4,)a = a+b   #增print(a)#del a #删除整个元组print(a)#无法修改,可以增加print(a[0])  #查询

24.#元组的转换

a = [1,2]a=tuple()print(type(a))

25.#字典知识点:dict 存储形式(key,value)键值对

dict ={"name":"告白","age":20}print(dict["name"])#防止访问对象不存在print(dict.get("age"))   #noneprint(dict.get("a","22"))   #未找到设定默认值

26.#字典的增加操作

a = {"name":"hsyy","age":"20"}newname=input("请输入新的名字:")a["new"]=newname#print(a["new"])print(a)

27.#字典的删除

a = {"name":"hsyy","age":"20"}print("删除前:%s"%a)del a["name"]#删除一个键值对print("删除后:%s"%a)del aprint("全部删除后%s"%a)  #清空后输出会报错不存在a.clear()#清空字典内容print("清空后:%s"%a)

28.#字典的修改

a = {"name":"hsyy","age":"20"}a["name"]="hsyyy"print(a)

29.#字典的查

a = {"name":"hsyy","age":"20"}print(a.keys())  #得到所有的键print(a.values())  #得到所有的值print(a.items())  #得到所有的键值对

30.#遍历所有的键值对

for key in a.keys():  #遍历键    print(key)for value in a.values():   #遍历值    print(value)for key,value in a.items():    print("输出键值对:%s:%s"%(key,value))  #遍历键值对

31.#枚举排序 0,1,2…

a = ("a","b","c")for i,v in enumerate(a):    print(i,v)

32.#乘法表练习

for x in range(1,10):    print("\t")    for y in range(1,x+1):        result = x * y        print("%d * %d = %d"%(x,y,x*y),end="\t")   #打印一个不换行

33.#函数的定义

def hanshu():    print("-------")    print("   函数的定义与调用   ")    print("-------")#函数的调用hanshu()

34.#函数带参数的定义

def addnum(a,b):    c = a+b    print(c)addnum(1,2)  #输出3

35.#返回值计算结果

def addnum(a,b):    return a +bvul = addnum(1,2)#print(addnum(1,2))print(vul)

36.#返回多个结果,逗号分割

def num(a,b):    shang = a/b    yushu = a%b    return (shang,yushu)shang,yushu=num(2,1)print("商等于:%d,余数等于:%d"%(shang,yushu))

37.#练习:自动输入数字,输出特定的长度

def hengxian():    b=int(input("数字:"))    print("-" * b)    #return bhengxian()

38.#求三数字和

def num():    a=int(input("第一个数:"))    b=int(input("第二个数:"))    c=int(input("第三个数:"))    add = (a + b + c)/3    print(add)num()

39.#输出给定长度练习

def num():    print("-"*10)def xiantiao(m):    i = 0    while i<m:        num()        i +=1  #注意先加1再执行xiantiao(int(input()))

40.#全局遍历与局部变量,局部变量调用全局变量

a = 100def num():    global a    print(a)  #输出100    a=500    print("%d"%a)  #输出500def numm():    print(a)     #输出500,全局变量被修改num()numm()

41.#文件的操作知识点

#文件的打开方式:r:打开  w:没有就创捷,并且覆盖f = open("cms识别/cms/text.txt","r")#f.write("hello,word")#red = f.read(5)reds = f.readlines()  #全部读取  不加s只读一行print(reds)i = 0for item in reds:    print("%s:%s"%(i,item)) #按照行号读取,注意前面的readlines的s    i +=1f.close()

42.#文件的重命名/删除 os模块

import os#os.rename("textt.txt","cms识别/cms/textt.txt")   #重命名:旧文件名的位置,新文件以及问价位置#f = open("cms识别/cms/1.txt","w")#f.close()#os.remove("cms识别/cms/1.txt")  #删除文件os.mkdir("cms识别/hsyy") #创建文件os.rmdir("xx")#删除文件夹#还有改变目录等等操作。。。

43.#错误和异常的处理知识

try:    f = open("cms识别/cms/textt.txt")except IOError:  #打开文件异常,属于IO异常后输出pass占位的结果     pass

44.#读取名称异常处理

try:    num = 1    print(num)    f = open("t.txt")#except (NameError,IOError) as t:  #打印错误信息,只会打印第一个except Exception as t:  #涵盖所有的报错信息,便于排查    print("你出错了!")    print(t)

45.#文件的强制(finally)执行与嵌套try

try:    f = open("cms识别/cms/textt.txt")    try:        f = open("t.txt")    finally:  # 强制执行        f.close()        print("强制执行")except Exception as t:    print(t)

初学者建议看完记得实操一遍,
要知道学习编程看一百次不如敲一次,

内容适合入门学习,大佬们误介/狗头

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_53577336/article/details/121873412

智能推荐

海康威视网络摄像头开发流程(五)------- 直播页面测试_ezuikit 测试的url-程序员宅基地

文章浏览阅读3.8k次。1、将下载好的萤石js插件,添加到SoringBoot项目中。位置可参考下图所示。(容易出错的地方,在将js插件在html页面引入时,发生路径错误的问题)所以如果对页面中引入js的路径不清楚,可参考下图所示存放路径。2、将ezuikit.js引入到demo-live.html中。(可直接将如下代码复制到你创建的html页面中)<!DOCTYPE html><html lan..._ezuikit 测试的url

如何确定组态王与多动能RTU的通信方式_组态王ua-程序员宅基地

文章浏览阅读322次。第二步,在弹出的对话框选择,设备驱动—>PLC—>莫迪康—>ModbusRTU—>COM,根据配置软件选择的协议选期期,这里以此为例,然后点击“下一步”。第四步,把使用虚拟串口打勾(GPRS设备),根据需要选择要生成虚拟口,这里以选择KVCOM1为例,然后点击“下一步”设备ID即Modbus地址(1-255) 使用DTU时,为下485接口上的设备地址。第六步,Modbus的从机地址,与配置软件相同,这里以1为例,点击“下一步“第五步,Modbus的从机地址,与配置软件相同,这里以1为例,点击“下一步“_组态王ua

npm超详细安装(包括配置环境变量)!!!npm安装教程(node.js安装教程)_npm安装配置-程序员宅基地

文章浏览阅读9.4k次,点赞22次,收藏19次。安装npm相当于安装node.js,Node.js已自带npm,安装Node.js时会一起安装,npm的作用就是对Node.js依赖的包进行管理,也可以理解为用来安装/卸载Node.js需要装的东西_npm安装配置

火车头采集器AI伪原创【php源码】-程序员宅基地

文章浏览阅读748次,点赞21次,收藏26次。大家好,小编来为大家解答以下问题,python基础训练100题,python入门100例题,现在让我们一起来看看吧!宝子们还在新手村练级的时候,不单要吸入基础知识,夯实自己的理论基础,还要去实际操作练练手啊!由于文章篇幅限制,不可能将100道题全部呈现在此除了这些,下面还有我整理好的基础入门学习资料,视频和讲解文案都很齐全,用来入门绝对靠谱,需要的自提。保证100%免费这不,贴心的我爆肝给大家整理了这份今天给大家分享100道Python练习题。大家一定要给我三连啊~

Linux Ubuntu 安装 Sublime Text (无法使用 wget 命令,使用安装包下载)_ubuntu 安装sumlime text打不开-程序员宅基地

文章浏览阅读1k次。 为了在 Linux ( Ubuntu) 上安装sublime,一般大家都会选择常见的教程或是 sublime 官网教程,然而在国内这种方法可能失效。为此,需要用安装包安装。以下就是使用官网安装包安装的教程。打开 sublime 官网后,点击右上角 download, 或是直接访问点击打开链接,即可看到各个平台上的安装包。选择 Linux 64 位版并下载。下载后,打开终端,进入安装..._ubuntu 安装sumlime text打不开

CrossOver for Mac 2024无需安装 Windows 即可以在 Mac 上运行游戏 Mac运行exe程序和游戏 CrossOver虚拟机 crossover运行免安装游戏包-程序员宅基地

文章浏览阅读563次,点赞13次,收藏6次。CrossOver24是一款类虚拟机软件,专为macOS和Linux用户设计。它的核心技术是Wine,这是一种在Linux和macOS等非Windows操作系统上运行Windows应用程序的开源软件。通过CrossOver24,用户可以在不购买Windows授权或使用传统虚拟机的情况下,直接在Mac或Linux系统上运行Windows软件和游戏。该软件还提供了丰富的功能,如自动配置、无缝集成和实时传输等,以实现高效的跨平台操作体验。

随便推点

一个用聊天的方式让ChatGPT写的线程安全的环形List_为什么gpt一写list就卡-程序员宅基地

文章浏览阅读1.7k次。一个用聊天的方式让ChatGPT帮我写的线程安全的环形List_为什么gpt一写list就卡

Tomcat自带的设置编码Filter-程序员宅基地

文章浏览阅读336次。我们在前面的文章里曾写过Web应用中乱码产生的原因和处理方式,旧文回顾:深度揭秘乱码问题背后的原因及解决方式其中我们提到可以通过Filter的方式来设置请求和响应的encoding,来解..._filterconfig selectencoding

javascript中encodeURI和decodeURI方法使用介绍_js encodeur decodeurl-程序员宅基地

文章浏览阅读651次。转自:http://www.jb51.net/article/36480.htmencodeURI和decodeURI是成对来使用的,因为浏览器的地址栏有中文字符的话,可以会出现不可预期的错误,所以可以encodeURI把非英文字符转化为英文编码,decodeURI可以用来把字符还原回来_js encodeur decodeurl

Android开发——打包apk遇到The destination folder does not exist or is not writeable-程序员宅基地

文章浏览阅读1.9w次,点赞6次,收藏3次。前言在日常的Android开发当中,我们肯定要打包apk。但是今天我打包的时候遇到一个很奇怪的问题Android The destination folder does not exist or is not writeable,大意是目标文件夹不存在或不可写。出现问题的原因以及解决办法上面有说报错的中文大意是:目标文件夹不存在或不可写。其实问题就在我们的打包界面当中图中标红的Desti..._the destination folder does not exist or is not writeable

Eclipse配置高大上环境-程序员宅基地

文章浏览阅读94次。一、配置代码编辑区的样式 <1>打开Eclipse,Help —> Install NewSoftware,界面如下: <2>点击add...,按下图所示操作: name:随意填写,Location:http://eclipse-color-th..._ecplise高大上设置

Linux安装MySQL-5.6.24-1.linux_glibc2.5.x86_64.rpm-bundle.tar_linux mysql 安装 mysql-5.6.24-1.linux_glibc2.5.x86_6-程序员宅基地

文章浏览阅读2.8k次。一,下载mysql:http://dev.mysql.com/downloads/mysql/; 打开页面之后,在Select Platform:下选择linux Generic,如果没有出现Linux的选项,请换一个浏览器试试。我用的谷歌版本不可以,换一个别的浏览器就行了,如果还是不行,需要换一个翻墙的浏览器。 二,下载完后解压缩并放到安装文件夹下: 1、MySQL-client-5.6.2_linux mysql 安装 mysql-5.6.24-1.linux_glibc2.5.x86_64.rpm-bundle