欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python教程:基础知识与字符串操作

程序员文章站 2022-06-26 18:02:26
联系QQ:970586718博客地址:https://blog.csdn.net/m0_46521785如何学好Python不断思考不要抄别人代码上课认真记忆、不停思考,不要放在课下上课以听为主,先理解再敲代码学编程就像谈恋爱,忘掉上一个才能更好的开展下一段,如果你学过C++,也许他是你的初恋,我知道世界上有很多像我一样的痴情好男人,但是呢你可以先暂时忘掉他,等我们考完之后该干嘛干嘛好吧。就像我学习C++,就会说什么啊,怎么这么麻烦,python都不用这么写,然后醒悟了....

联系QQ:970586718

博客地址:https://blog.csdn.net/m0_46521785

如何学好Python

  • 不断思考

  • 不要抄别人代码

  • 上课认真记忆、不停思考,不要放在课下

  • 上课以听为主,先理解再敲代码

  • 学编程就像谈恋爱,忘掉上一个才能更好的开展下一段,如果你学过C++,也许他是你的初恋,我知道世界上有很多像我一样的痴情好男人,但是呢你可以先暂时忘掉他,等我们考完之后该干嘛干嘛好吧。就像我学习C++,就会说什么啊,怎么这么麻烦,python都不用这么写,然后醒悟了,导致后来写python连input都忘了

  • 牢记基础概念,不要把编程就当成写代码,你能写出代码是有一定知识基础的

  • 遇到问题先自己解决,有问题先调试,不会的地方搜百度,最后再问别人

如何写编程题

  • 最好会使用pycharm或者spyder编译器

    pycharm下载、安装、使用教程:(推荐)

    https://www.runoob.com/w3cnote/pycharm-windows-install.html

    如果使用spyder编译器的话就直接下载Anaconda

    https://www.jianshu.com/p/62f155eb6ac5

  • 遇到问题先好好读题,形成自己的思路

  • 不要随便瞎写变量名

  • 注重课本概念

Python特点

不过多介绍,等大家后面会接触到的。

  • 语法简单,人性化

  • 第三方库众多

  • 安全性、高并发处理能力不太好

  • 运行速度慢

Python以后能干嘛

  • 写爬虫
  • 数据处理与分析
  • 画图,2D图,3D图
  • 机器学习/深度学习/自然语言处理/计算机视觉
  • 做网站后端
  • 自动化运维

这些部分我都有涉及,但是因为课程安排时间很短,就不给大家展示了,看看最后能不能留出时间

学习资源

  • 菜鸟教程
  • 易百教程
  • csdn、博客园
  • B站

学习要点

  • 循环、选择结构
  • 字符串操作以及相关函数
  • 列表、字典的操作
  • 字符串格式化

程序设计语言分类

记住有哪三类就OK

  • 机器语言

    机器语言是由二进制 0、1 代码指令构成,不同的 CPU 具有不同的指令系统。机器语
    言程序难编写、难修改、难维护,需要用户直接对存储空间进行分配,编程效率极低。目
    前,这种语言已经被淘汰。

  • 汇编语言

    汇编语言指令是机器指令的符号化,与机器指令存在着直接的对应关系,所以汇编语
    言同样存在着难学难用、容易出错、维护困难等缺点。但是汇编语言也有自己的优点:可
    直接访问系统接口,汇编程序翻译成的机器语言程序的效率高。
    从软件工程角度来看,只有在高级语言不能满足设计要求,或不具备支持某种特定功
    能的技术性能(如特殊的输入输出)时,汇编语言才被使用。

  • 高级语言

    高级语言是面向用户的、基本上独立于计算机种类和结构的语言。其最大的优点是:
    形式上接近于算术语言和自然语言,概念上接近于人们通常使用的概念。高级语言的一个
    命令可以代替几条、几十条甚至几百条汇编语言的指令。因此,高级语言易学易用,通用
    性强,应用广泛。

IPO

  • input()接收到的是字符串类型

    a = input()
    
  • eval()

    • 还原数据本来的样子
    • 运行可以运行的步骤
    • ”eval is evil“存在安全隐患
    a = eval('11')
    print(eval('1+1'))
    
  • print()

    print(1,2,3)
    

基础知识

  • 缩进:四个空格或者按Tab键

  • 注释:使用#单行注释

  • 保留字

Python基本数据类型

语言来源于生活,语言设计的初衷就是解决生活中的问题,我们生活中解决问题,无非用文字或者数字

  • 字符型
    • 字符串
  • 布尔类型
    • True
    • False
  • 数值类型
    • 整数(整型)
    • 小数(浮点型)
    • 复数(a+bj) -->不常用

运算符

很符合日常生活语法

算数运算符 描述
x%y 求得商的余数。例如:5%2结果为1
x//y 求得x除y商的整数位,简称整除。例如x//y结果为2
x**y 求得x的y次幂。例如4**(1/2)结果为2,3**2结果为9
比较运算符 描述
x==y、x!=y 判断x是否相等或者不相等,符合条件返回True,否则返回False
x>y、x<y 判断x是否大于或小于y,符合条件返回True,否则返回False
x<=y、x>=y 判断x是否大于等于或小于等于y,同样返回布尔值
赋值运算符 描述
x=y 将y的值赋值给x,注意:当y是复杂数据类型时要使用.copy()的方法
x+=1 等价于x=x+1
x-=1 等价于x=x-1
x*=2 等价于x=x*2
x/=2 等价于x=x/2
逻辑运算符 描述
and 布尔运算“与”
or 布尔运算“或”
not 布尔运算“非”

即得到优先级关系:or<and<not,同一优先级默认从左往右计算。

成员运算符 描述
a in b 如果a在b就返回True
a not in b 如果a不在b就返回True

字符串操作

特点:

  • 有序
  • 无限长
  • 不可修改

需要掌握操作:

  • 求长度len

    a = 'Hello Wold!'
    print(len(a))
    
  • 索引

    a = 'Hello Wold!'
    print(a[2])
    print(a[-1])
    
  • 切片、反转

    a = 'Hello Wold!'
    print(a[0:-1])
    print(a[0:])
    print(a[:])
    print(a[::-1])
    
  • 比较大小

    比较大小会从前往后比较字符ASCII码的大小,如果相同则继续继续往后比较,直到出现不同的字母。

    a = 'Hello Wold!'
    print(a > 'A')
    print(a > 'a')
    
  • 转义字符与原生字符串

    使用\这个符号可以起到反转义的作用

    print('11\n22')
    print('11\\n22')
    print(r'11\n22')
    
  • 符号不能混用

    print(''111'')  # 报错
    print('"11"')  # 可以运行
    
  • 字符串加法与乘法

    a = '1'
    b ='2'
    c = a+b
    d = a*10
    print(c)
    print(d)
    
  • 常用函数

    • split
    • strip
    • replace、chr、ord
    • 可以手写的函数:isupper、islower、isdigit、isnumeric、count、index
  • 如何用for循环遍历字符串

    a = '12345'
    for i in a:
        print(i)
    ########或者#######
    for i in range(len(a)):
        print(a[i])
    
  • 数字与字符串转换

    a = eval('12.3')  # 字符串转数字
    print(type(a))
    b = str(a)  # 数字转字符串
    print(type(a))
    
  • 列表与字符串转换

    a = '12345'
    print(list(a))  # 字符串转列表
    b = ['1','2','3','4','5']
    print(''.join(b))  # 列表拼接为字符串
    

字符串格式化

format格式化

Python教程:基础知识与字符串操作

print('{:#^20.3f}   我爱你{:}'.format(1.23456789,'帅帅龙'))

%格式化

Python教程:基础知识与字符串操作

注意:上面的%与对齐中间添加一个填充字符,不写默认是空格

print('%#-20.2f'%1.23456789)

思考问题

  • 怎么保留两位小数输出?

  • 小数怎么变成整数?

  • replace怎么用?

  • 怎么使用split()与strip()

  • 怎么对一个数开平方,怎么求一个数的平方

  • 怎么将接收到的字符串变为数字?使用int吗?

  • 字符串可以比较大小吗?

  • 你能用for循环写一段代码统计某个字符出现的次数吗?

  • 如何判断一个字符串是否包含一段子字符串?

  • 写一段代码,删除指定字符

  • 下面这段代码对吗

    a = '我爱你'
    a[-1] = '帅帅龙'
    print(a)
    
  • 如何将字符串反转

  • 如何取出a中的456

    a = '1234567'
    

本文地址:https://blog.csdn.net/m0_46521785/article/details/110449692