首页 > 编程语言 >python的基础知识入门

python的基础知识入门

时间:2024-08-16 15:26:26浏览次数:12  
标签:入门 python str1 基础知识 Python 字符串 print input 代码

一.初聊Python

为什么要学习Python?
在学习Python之前,你不要担心自己没基础或“脑子笨”,我始终认为,只要你想学并为之努力,就能学好,就能用Python去做很多事情。在这个喧嚣的时代,很多技术或概念会不断兴起,我希望你能沉下心来去学习,不要急于求成,一步一个脚印。当你把某个技术学好、学精后,还是能做一些事情的,甚至能找到喜欢的工作或完成实践项目。

程序语言没有最好,只有最适合。作为一名初学者,我非常推荐你学习Python,为啥?一方面是因为它具有语法清晰、代码友好、易读性高的特点,同时Python拥有强大的第三方库函数,包括网络爬取、数据分析、可视化、人工智能等;另一方面Python既是一门解释性编程语言,又是面向对象的语言,其操作性和可移植性高,被广泛应用于数据挖掘、信息采集、人工智能、网络安全、自动化测试等领域。甚至,很多小学生、高中课程和计算机二级也都陆续增加了Python。

image.png

Python优势
Python最大的优势在于效率。有时候程序员或科研工作者的效率比机器的效率更重要,对于很多复杂性的功能,使用更加清晰的语言能给程序减少更多的负担,从而大大增强程序的质量,其易学性和扩展性也能让新手很快上手。虽然Python底层运行速度要比C语言慢,但Python清晰的结构能解放程序员的时间,同时很方便的和其他编程语言代码(如C语言)融合在一起。

所以,从来没有一种编程语言可以像Python这样同时扎根在这么多领域,并且Python支持跨平台操作,也支持开源,拥有强大的第三方库。尤其随着人工智能的持续火热,Python在IEEE近几年发布的最热门语言中多次排名第一,越来越多的程序爱好者、科技关注者也都开始学习Python。

image.png

Python学习建议
在Python学习过程中,不要觉得你的底子薄或者之前没接触过,就想放弃,很多人还没起跑就选择退赛。我想,只要沉下心来,肯下功夫,就能学好。在学习过程中,一定要去写代码、写代码、写代码,只写真正动手去实践,才能慢慢积累。

同时,编写代码过程中出错也是家常便饭,我现在写Python代码每天不出点错,心里都躁得慌,所以遇到错误,学会百度、谷歌去解决真的非常重要,它也是你学习能力的一种提升,实在找不到错误,可以去开源论坛、社区、学习群里提问,也欢迎来公众号或CSDN找我。

接下来我给出许老师推荐的Python程序员成长路线图,包括:基础语法–>语感训练–>课题练习–>分方向继续学习–>中级程序员–>拓展深度和广度–>高级程序员。

image.png

这里,给出我学习Python的一些历程和技巧。我最早接触Python是2013年,主要是因为研究生方向是自然语言处理,需要通过Python抓取数据并进行分析,所以就选择了它。那些年Python的资料很少,也没这么火热,但也一直坚持着,具体建议如下:

  • 先把环境安装,开始编写第一个Python代码,别再去等明天了
  • 学习过程中切勿看视频(书籍),喝着奶茶,就是一天,一定要动手敲代码啊
  • 通常先了解Python基础语法,推荐MOOC北理工嵩天老师的视频和runoob语法,当然B站和CSDN上也有很多免费资料,大家可以去选择
    – https://www.icourse163.org/course/BIT-268001
    – https://www.runoob.com/python/python-intro.html
  • 基础语法大致掌握后可以尝试学习Python网络爬虫,因为不论是数据分析、机器学习、渗透测试等,都会涉及到爬虫技术,只有拥有自己的语料,才能处理更多问题。 爬虫方面不用太深入,掌握两门技术即可
    Urllib、Requests、BeautifulSoup、XPath、Selenium、Scrapy、分布式爬虫
  • 接下来学习Python可视化分析(词云)、微信操作、邮箱发送等功能,这些知识能有效提高你的编程兴趣
  • 人工智能方向:包括机器学习(回归 | 聚类 | 分类)、深度学习(TensorFlow | Keras | Pytorch)学习,建议结合实际科研或项目进行深入研究
  • 图像识别方向:包括图像处理、OpenCV、模式识别、机器学习、深度学习、目标检测学习,也建议结合实际科研或项目进行深入研究
  • 其他方向学习:Web网站开发、网络安全、自动化测试、应用程序编写

学习路上没有捷径,只有坚持,但你却能通过Python不断提升你的学习兴趣,做一些喜欢的事,喜欢上这门语言。最后给出当年大三学习Python时激励自己的话:
If not now, when? If not me, who?
如果不是为了自己奋斗,又是为谁;如果不是现在奋斗,什么时候开始呢?


二.Python简介及安装入门

1.Python简介

Python是荷兰人Guido van Rossum在1989年开发的一种脚本新解释语言,它是一种面向对象的解释型计算机程序设计语言。Python是纯粹的自由软件,其语法简洁清晰,特色之一是强制使用空白符(White Space)作为语句缩进。由于Python具有丰富和强大的库,常被昵称为胶水语言。

image.png

Python作为热门语言,具有以下特点:

  • 语法清晰,代码友好,易读性好
  • 应用广泛,具有大量的第三方库支持,尤其是机器学习、人工智能相关库
  • Python可移植性强,易于操作各种存储数据的文本文件和数据库
  • Python是一门面向对象语言,支持开源思想
  • 能在多种功能、多种平台上撰写脚本及快速开发

作者和许老师观点一样,不建议初学者上来就选择像Anaconda或PyCharm等集成工具,在我看来它们提供的便利不如给用户学习带来的麻烦多。至少,在开始第一个星期不要使用IDE。对于Python这样一种解释型的脚本语言,一款趁手的编辑器就足够。

  • 我们需要的是专注于python本身,而不是被工具使用问题所困扰。君不见,知乎上关于Pycharm和Vscode的使用说明、常见问题的解决方案,多得几乎超过了讨论Python本身
  • 很多学生由于学校电脑的限制,安装Python官方提供的轻量型工具学习更方便
  • 手工运行代码,可以更直观、更深刻地了解脚本的解释执行过程
  • 手工调试代码,有助于代码优化,提高代码把控能力
  • 可以更好地使用pip安装和管理第三方模块

当然,这些工具后续随着学习深入,作者也会普及和分享其功能用法。

  • Anaconda Python
  • PyCharm
  • Cpython
  • ActivePython
  • PyPy
  • Jython
  • Spyder

image.png


2.安装流程

如果您选择Windows系统下编程,则您可以在Python官网Downloads页面中下载编程软件,其官网网址为“http://www.python.org”。同时,如果您是在Linux系统下编写Python代码,则您可以直接在Linux系统中内置安装使用Python解释器。

image.png

从Python官网下载时,请注意选择正确的版本。如果是用于学习,下载最新版没有问题,如果是用于生产,则要考虑你开发需要的第三方模块是否支持最新版的Python。注意,Python2已经不更新,建议大家学习Python3,两者语法基本类似,仅部分功能修改。这里作者选择下载Python3.6或Python3.7。

image.png

安装时不要忘记勾选最下面的两个复选框,否则会给后续的模块安装带来一些麻烦,推荐使用默认方式安装。

image.png

安装成功后,需要在“开始”菜单中选中“程序”,找到安装成功的Python软件,如图所示,打开解释器编写Python代码。

image.png

打开“Python 3.6(64-bit)”命令行软件,输入第一行Python代码“I love python”,输出结果如下图所示。解释型语言的优势,就是可以写一句执行一句,想到哪儿写到哪儿,不必像编译型语言那样得把程序全部写完,编译成功后才能运行。我特别喜欢使用python的IDLE,甚至拿它当计算器用。

image.png

但是如果你需要编写大段代码或自定义函数时,Python命令行肯定不是一个很好的选择,此时读者可以点击“IDLE”,运行Python的集成开发环境(Python Integrated Development Environment,IDLE),你可以用它来创建或打开.py脚本文件,可以编辑、运行和调试,打开如下图所示。

image.png

接着可以点击“File”中“New File”新建文件,并另存为py文件,如“test01.py”,然后点击运行“Run Module F5”按钮,运行Python脚本文件。

image.png

所有Python文件将以.py为扩展名。将源代码写在test01.py文件中运行。

image.png

很多时候,我们用IDLE验证代码的写法是否正确,查看模块是否安装成功以及版本号。IDLE支持tab键自动补齐,经常用这个功能查看某个对象的方法和属性。小技巧:

  • tab键自动补齐
  • 光标移动到执行过的语句上敲击回车,可以重复这个命令
  • 下划线(_)可以获取最后一次执行结果


三.基础语法

前面已经成功安装了Python软件,接下来我们开始讲解Python的基础语法,包括缩进与注释、变量与常量、输入与输出、赋值与表达式等。

1.缩进与注释

缩进
不同于其他语言,在Python中通过缩进来标明代码的层次关系。1个缩进等于4个空格,它是Python语言中标明程序框架的唯一手段。

在Python中,同一个语句块中每条语句都是缩进的,并且缩进量相同,当回退或已经闭合语句块时,需要回退至上一层的缩进量,表示当前块结束。下面是C语言和Python语法的对比,其中C语言用大括号来区分层次关系,Python通过缩进来区分。

缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。

image.png

Python引号
Python 可以使用引号( ’ )、双引号( " )、三引号( ‘’’ 或 “”" ) 来表示字符串,引号的开始与结束必须是相同类型的。其中三引号可以由多行组成,编写多行文本的快捷语法,常用于文档字符串,在文件的特定地点,被当做注释。

word = 'eastmount'
sentence = "娜璋AI安全之家"
paragraph = """这是一个段落。
包含了多个语句"""

注释
注释是用于说明代码信息的,注释代码是不执行的。Python注释主要包括两种:

  • 行注释:采用#开头进行单行注释,如“#定义一个变量”。
#!/usr/bin/python
# -*- coding: UTF-8 -*-
# 文件名:test01.py

# 第一个注释
print ("Hello World!")  # 第二个注释
  • 块注释:多行说明的注释采用’’'或"""开头和结尾,比如使用Python集成开发环境Spyder新建文件时,通常有一段注释说明。
"""
Created on Sat Sep 16 10:34:31 2017
@author: yxz
"""

多行语句
Python语句中一般以新行作为语句的结束符。但是我们可以使用斜杠( \)将一行的语句分为多行显示,如下所示:

total = item_one + \
        item_two + \
        item_three

语句中包含 [], {} 或 () 括号就不需要使用多行连接符。如下实例:

days = ['Monday', 'Tuesday', 'Wednesday',
        'Thursday', 'Friday']

2.变量与常量

变量
变量是程序中值可以发生改变的元素,是内存中命名的存储位置,变量代表或引用某值的名字,比如希望用N代表3,name代表“hello”等。其命名规则如下:

  • 变量名是由大小写字符、数字和下划线(_)组合而成的。
  • 变量名的第一个字符必须是字母或下划线(_)。
  • Python中的变量是区分大小写的,比如“TEST”和“test”是两个变量。
  • 在Python中对变量进行赋值时,使用单引号和双引号是一样的效果。
    注意,Python中已经被使用的一些关键词不能用于声明变量,关键词表如下:
['and', 'as', 'assert', 'break', 'class', 'continue', 'def',
 'del', 'elif',  'else', 'except', 'exec', 'finally', 'for', 'from', 
 'global', 'if', 'import', 'in',  'is', 'lambda',  'not', 'or', 
 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']

==不同于C/C++/Java等语言,Python中的变量不需要声明,就可以直接使用赋值运算符对其进行赋值操作,根据所赋的值来决定其数据类型,下图为未声明输出其类型。==

image.png

常量
常量是指程序中值不发生改变的元素,一旦初始化后就不能对其修改的固定值,它是内存中用来保存固定值的单元。由于某种原因,Python并未提供如C/C++/Java一样的const修饰符,换言之,python并没有定义常量的关键字。但是Python可以使用对象的方法来创建常量,比如通过const.py文件,将const类注册到sys.modules全局字典中


3.输入与输出

输出
输出使用print()函数实现,包括输出字符信息或变量,在Python2中,输出包括两种格式:print a或print(a),表示输出变量a的值。但Python3不再支持空格输出,如果您之前使用的是Python2,我们需要注意这些区别。

如果需要输出多个变量,则使用采用逗号连接,如print(a,b,c)。简单示例如下图所示,print()函数可以输出各种类型的变量。

  • print(a,b,c)

image.png

同时,Python支持格式化输出数据,需要调用format()函数实现,其输出格式为:print(format(val,format_modifier)),其中参数val表示值、format_modifier表示格式字,示例如下图所示。

  • print(format(val,format_modifier))

image.png

其中“6.2f”表示输出6位数值的浮点数,小数点后精确到两位,输出值的最后一位采用四舍五入方式计算,最终输出的结果为“12.35”。“.2%”表示输出百分数,保留两位有效数字,其输出结果为“34.56%”。如果想输出整数直接使用“.0f”即可。


输入
Python输入主要包括input()和raw_input()两个函数。

  • input()
    input()函数从控制台获取用户输入的值,格式为:<变量>=input(<提示性文字>)。获取的输入结果为用户输入的字符串或值,并保存在变量中。输入字符串和整数实例如下,其中type()函数用于查找变量的类型。
>>> str1 = input("input:")
input:"I am a teacher"
>>> print(str1)
I am a teacher

>>> age = input("input:")
input:25
>>> print(age,type(age))
25 <class 'str'>
>>> 
  • raw_input()
    raw_input()函数是另一个输入操作,并返回string字符串。输入以换行符结束,通过help(raw_input)可以查找帮助,常见格式为:s = raw_input([prompt]),参数[prompt]可选,用于提示用户输入。示例代码如下,第一段代码输入“hello world”,第二段代码输入“25”。
>>> str1 = raw_input("input:")
input:hello world
>>> print(str1)
hello world

>>> age = raw_input("input:")
input:25
>>> print(age,type(age))
25 <type 'str'>
>>> 

==注意,raw_input是2.x版本的输入函数,在新版本环境下会报错,该函数未定义。在3.x版本中应该用input()代替raw_input()。==

image.png


4.赋值与表达式

赋值
Python中的赋值语句是使用等号(=)给变量直接赋值,如“a=10”。如果需要同时给多个变量进行赋值,表达式如下:

  • <变量1>,<变量2>,…,<变量n> = <表达式1>,<表达式2>,…,<表达式n>

它先运算右侧N个表达式,然后同时将表达式结果赋给左侧变量。举例如下:

>>> a,b,c = 10,20,(10+20)/2
>>> print(a,b,c)
10 20 15.0
>>>

表达式
表达式是程序中产生或计算新数据值的一行代码,赋值表达式如a=10,通常由变量、常量或操作符号产生表达式。定义表达式注意一下几点:

  • 使用变量之前必须对其赋值,使用赋值表达式对其赋值。
  • 表达式也需要遵循句首缩进规律,且不能改变其空格数量。
  • 表达式中可以适量增加空格,使程序可读性更高,但空格不能分割变量的命名方式,比如“a = b + c”,在运算符之间适当增加空格。


四.数据类型

讲述完Python基础知识后,让作者带领大家认识Python的常用数据类型。

1.数字类型

Python常见的数字类型包括整数类型、浮点数类型、复数类型。

  • 整数类型:对应的数学中的整数,其返回类型为int型,如10、25等;long为长整型,也可以代表八进制和十六进制。
  • 浮点数类型:带有小数点的数字,返回类型为float型,如3.14、2.1e2等。
  • 复数类型:Python复数分为两部分,形如a + bj,其中a为实部,b为虚部,返回类型为complex,例如-12.3 + 8j。复数可以通过.real获取实部数据,.imag获取虚部数据。
>>> z = -12.3 + 8j
>>> print(z, type(z))
(-12.3+8j) <type 'complex'>
>>> print(z.real, z.imag)
-12.3 8.0

注意:Python中数字类型是可以相互转换的,其中浮点数调用int()函数转换为整数,如int(3.14)返回结果3,整数调用float()转换为小数,浮点数调用complex()函数转换为复数。


2.字符串类型

字符串类型在Python中是指需要用单引号或双引号括起来的一个字符或字符串。该类型调用type(‘Python’)返回的结果是str类型。一般记为:

  • s=“a1a2···an”(n>=0)

字符串表示一个字符的序列,其最左端表示字符串的起始位置,下标为0,然后依次递增。字符串对应的编号称为“索引”,比如str1=‘Python’,则str1[0]获取第一个字符,即“P”字母,并且字符串提供了一些操作和函数共用户使用,比如len(str1)计算字符串长度,其返回结果为6。

counter = 100         #赋值整型变量
miles = 1000.0        #浮点型
name = "Eastmount"    #字符串

python的字串列表有两种取值顺序:

  • 从左到右索引默认0开始的,最大范围是字符串长度少1
  • 从右到左索引默认-1开始的,最大范围是字符串开头

image.png

如果你要实现从字符串中获取一段子字符串的话,可以使用 [头下标:尾下标] 来截取相应的字符串,其中下标是从0开始算起,可以是正数或负数,下标可以为空表示取到头或尾。[头下标:尾下标] 获取的子字符串包含头下标的字符,但不包含尾下标的字符。比如:

>>> s = 'abcdef'
>>> s[1:5]
'bcde'

3.列表类型

列表是Python中非常重要的一个数据类型,它是在中括号([ ])中用逗号分隔的元素集合,列表中的元素可以通过索引进行单个访问,并且每个元素之间是有序的。例如:

>>> list1 = [1, 2, 3, 4, 5]
>>> print(list1)
[1, 2, 3, 4, 5]
>>> print(list1[0])
1
>>> print(type(list1))
<type 'list'>

>>> list2 = ['I', 'am', 'a', 'teacher']
>>> print(list2)
['I', 'am', 'a', 'teacher']
>>> print(list2[3])
teacher
>>> 

列表可以完成大多数集合类的数据结构实现。它支持字符、数字、字符串甚至可以包含列表(即嵌套)。列表用 [ ] 标识,是Python最通用的复合数据类型。

列表中值的切割也可以用到变量 [头下标:尾下标] ,就可以截取相应的列表,从左到右索引默认0开始,从右到左索引默认-1开始,下标可以为空表示取到头或尾。(下图参考runoob网站,推荐大家去学习)

image.png

列表中的每个元素可以定义不同的数据类型,如list1 = [1, 1.3, ‘teacher’]。其操作方法和字符串类似,如列表采用加号(+)拼接、采用乘号(*)重复显示、也可以切片获取列表中的子元素,示例如下:

>>> list1 = [1, 2, 3, 4, 5]
>>> list2 = [6, 7, 8]
>>> print(list1+list2)
[1, 2, 3, 4, 5, 6, 7, 8]
>>> print(list2*3)
[6, 7, 8, 6, 7, 8, 6, 7, 8]
>>> print(list1[2:4])
[3, 4]
>>> 

列表中的常见方法如下表所示,假设存在列表list1 = [4, 2, 1, 5, 3]。

image.png


4.元组类型

元组是和列表类似的一种数据类型,它采用小括号定义一个或多个元素的集合,其返回类型为tuple。示例如下:

>>> t1 = (12, 34, 'Python')
>>> print(t1)
(12, 34, 'Python')
>>> print(type(t1))
<type 'tuple'>
>>> print(t1[2])
Python
>>> 

注意:可以定义空的元组,如t2=(),元组可以通过索引访问,比如上述代码t1[2]访问第3个元素,即“Python”。当元组定义后就不能进行更改,也不能删除,这不同于列表,由于元组的不可变特性,它的代码更加安全。

以下是元组无效的,因为元组是不允许更新的,而列表是允许更新的。错误提示:TypeError: ‘tuple’ object does not support item assignment,在编程构成中出错或BUG是非常正常的,莫慌,解决掉它。

# -*- coding: UTF-8 -*-
tuple = ( 'runoob', 786 , 2.23, 'john', 70.2 )
list = [ 'runoob', 786 , 2.23, 'john', 70.2 ]
tuple[2] = 1000    # 元组中是非法应用
list[2] = 1000     # 列表中是合法应用

image.png


5.字典类型

字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型。列表是有序的对象集合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。

字典是针对非序列集合而提供的,字典用"{ }"标识,由键值对(< Key > < Value >)组成,字典是键值对的集合,其类型为dict。键是字典的索引,一个键对应着一个值,通过键值可查找字典中的信息,这个过程叫做映射。

示例如下,通过键值对可以获取“4”对应的“Guiyang”。

>>> dic = {"1":"Beijing","2":"Shanghai","3":"Chengdu","4":"Guiyang"}
>>> print(dic)
{'1': 'Beijing', '3': 'Chengdu', '2': 'Shanghai', '4': 'Guiyang'}
>>> print(dic["4"])
Guiyang

字典与列表主要存在几个区别:

  • 列表中的元素是顺序排列的,字典中的数据是无序排列的。
  • 它们的映射方式不同,列表通过地址映射到值,字典通过键值对映射到值。
  • 列表只能通过数字下标或索引访问,字典可以用各种对象类型作为键访问。

字典键值对灵活应用非常重要,尤其是网络爬虫Json格式解析,后面我们实际案例中会用到。下面给出一段简单代码,重点是keys()和values()用法。

dict = {}
dict['one'] = "This is one"
dict[2] = "This is two"

tinydict = {'name': 'runoob','code':6734, 'dept': 'sales'}
 
print(dict['one']) #输出键为one的值
print(dict[2])     #输出键为2的值
print(tinydict)    #输出完整字典
print(tinydict.keys())   #输出所有键
print(tinydict.values()) #输出所有值

输出结果如下图所示:

image.png


五.字符串操作

个人觉得字符串操作也是Python非常好用的地方,不论是数据爬取、大数据分析或文本挖掘中,所以作者单独将该部分拿出来进行讲解。

字符串是指有序的字符序列集合,用单引号、双引号、三重(单双均可)引号引起来,其中使用三重引号括起来的字符串变量可以用来定义换行的字符串。比如:

str1 = 'hello world'
str2 = "hello world"
str3 = """hello world"""

字符串支持格式化输出,需要引入操作符百分号(%)实现,在百分号的左侧放置一个格式化字符串,右侧放置期望的格式化值,也可是元组和字典。例如:

>>> print("Hi!My Name is %s,I am %d years old and %f pounds heavy."%("YXZ", 26, 55.5))
Hi!My Name is YXZ,I am 26 years old and 55.500000 pounds heavy.
>>> 

依次输出字符串(%s)、整数(%d)、浮点数(%s)三个值。同时字符串支持各种各样的操作,尤其是处理文本内容时,需要使用这些方法及函数,下面讲解常用函数。

基础操作
字符串的基本操作包括求长度、拼接、重复操作、索引、切片等等。假设str1字符串为“hello”,str2字符串为“world”,则len(str1)计算字符串str1长度为5;str1+str2拼接后的结果为“helloworld”;str1*3字符串重复结果为“hellohellohello”。

字符串切片定义为s[i:j:step],其中step表示切片的方向,默认起点从0开始,终点不写切到最后。例如:

str1 = 'abcdefghijklmn'
print(str1[3:6])
# def

输出结果为“def”,从第3个值开始获取,第6个值为终点且不获取,即str1[0]=‘a’,str1[3]=‘d’,str1[4]=‘e’,str1[5]=‘f’。同样,如果增加step参数且为负数,表示从反向切片。正方向第一个a索引下标值为0,最后一个n索引下标值为-1,结果为“nmlk”。

str1 = 'abcdefghijklmn'
print(str1[-1:-5:-1])
# nmlk

find()函数

  • 用法:从字符串中查找子字符串,返回值为子串所在位置的最左端索引。如果没有找到则返回-1,扩展的rfind()方法表示从右往左方向查找,常用于正则表达式爬取数据。
  • 示例:获取字符串“def”的位置,位于第3个位置(从0开始计数)。
str1 = 'abcdefghijklmn'
num = str1.find('def')
print num
# 3

split()函数

  • 用法:字符串分割函数,将字符串分割成序列,返回分割后的字符串序列。如果不提供分割符,程序将会把所有空格作为分隔符。
  • 示例:默认按照空格分割字符串,也可以设置如“+”分割字符串,该方法在字符串分割、IP提取、URL后缀提取常用。

image.png

strip()函数

  • 用法:该函数用于去除开头和结尾的空格字符(不包含字符串内部的空格),同时S.strip([chars])可去除指定字符。扩展的函数lstrip()去除字符串开始(最左边)的所有空格,rstrip()去除字符串尾部(最右边)的所有空格。
  • 示例:去除字符串前后两端的空格。
>>> str1 = "    I am a teacher    "
>>> print(str1.strip())
I am a teacher
>>> 

join()函数

  • 用法:通过某个字符拼接序列中的字符串元素,队列中元素必须是字符串,返回一个拼接好的字符串函数,可以认为join()函数是split()函数的逆方法。
  • 示例:采用空格(’ ')拼接字符串[‘I’,‘am’,‘a’,‘teacher’],代码及输出结果如下。
>>> num = ['I','am','a','teacher']
>>> sep = ' '
>>> str1 = sep.join(num)
>>> print str1
I am a teacher
>>> 


六.总结

无论如何,作者都希望这篇文章能给您普及一些Python知识,更希望您能跟着我一起写代码,一起进步。如果文章能给您的研究或项目提供一些微不足道的思路和帮助,就更欣慰了。作者最大的期望就是文章中的一些故事、话语、代码或案例对您有所帮助,致那些努力奋斗的人。

标签:入门,python,str1,基础知识,Python,字符串,print,input,代码
From: https://blog.csdn.net/s44359487yad/article/details/141260914

相关文章

  • QT设置回调函数给python调用——参数法
    这种方法将回调函数作为python函数参数对象的方法来使用。Qt已经添加了Python库,并且能够正常调用Python的API,可以成功调用Python的代码块,这部分可以参考我另外一篇博客:1.QT相关函数定义1.1创建回调函数例如下面两个函数//实际的回调函数voidprintValue(intvalue){......
  • QT设置回调函数给python调用——内置模块法
    1.QT相关函数定义和 QT设置回调函数给python调用——参数法中的定义相同如下://实际的回调函数voidprintValue(intvalue){qDebug()<<"printValuevalue:"<<value;}intgetValue(intvalue){qDebug()<<"getValuevalue:"<<value;......
  • .NET8 Blazor 从入门到精通:(二)组件
    目录Blazor组件基础路由导航参数组件参数路由参数生命周期事件状态更改组件事件Blazor组件基础新建一个项目命名为MyComponents,项目模板的交互类型选Auto,其它保持默认选项:客户端组件(Auto/WebAssembly):最终解决方案里面会有两个项目:服务器端项目、客户端项目,组件按......
  • Python借助Selenium,保留原样式拷贝网站资源
    importurllib3fromseleniumimportwebdriverfrombs4importBeautifulSoupimportosimportrequestsfromurllib.parseimporturljoin,urlparseimportbase64importrefromrequests.adaptersimportHTTPAdapterfromrequests.packages.urllib3.util.retryim......
  • Python魔法应用:自动化日常任务:让Python成为你的私人助理
    自动化日常任务:让Python成为你的私人助理引言自动化文本处理:批量重命名文件、整理数据批量重命名文件整理数据自动化邮件发送:使用smtplib发送邮件自动化网页交互:使用requests库获取网页数据结语引言在日常工作和学习中,我们常常会遇到大量重复且繁琐的任务,这些任务......
  • python 之 pytest框架
    一、pytest单元测试框架1、什么是单元测试,针对软件的最小单位(函数,方法,接口)进行正确性的检查测试。 2、单元测试框架(按语言分)java:junit和testingpython:unittest和pytest 3、单元测试主要是做什么呢?(1)、测试发现:从多个文件里面去找到测试用例(2)、测试执行:按......
  • 黑客入门教程(非常详细)从零基础入门到精通,看完这一篇就够了
    前言这篇文章没有什么套路。就是一套自学理论和方向,具体的需要配合网络黑白去学习。毕竟是有网络才会有黑白!有自学也有培训!1.打死也不要相信什么分分钟钟教你成为大黑阔的,各种包教包会的教程,就算打不死也不要去购买那些所谓的盗号软件之类的东西。2,我之前让你们在没有......
  • 【Three.JS零基础入门教程】第六篇:物体详解
     前期回顾:【Three.JS零基础入门教程】第一篇:搭建开发环境【Three.JS零基础入门教程】第二篇:起步案例【Three.JS零基础入门教程】第三篇:开发辅助【Three.JS零基础入门教程】第四篇:基础变换【Three.JS零基础入门教程】第五篇:项目规划下面将进一步详解介绍Threejs中的常用......
  • python蟒蛇绘制
    turtle海龟绘图setup()设置窗体大小及位置setup()不是必须的importturtleturtle.setup(650,350,200,200)turtle.penup()turtle.fd(-250)turtle.pendown()turtle.pensize(25)turtle.pencolor("purple")turtle.seth(-40)foriinrange(4):turtle.circle(40,80)......
  • Python温度的转换
    神清气爽哈哈哈程序代码:#温度的转换TempStr=input("请输入带有符号的温度值:")ifTempStr[-1]in['F','f']:#判断字符转最后一个字符是否为F或fc=(eval(TempStr[0:-1])-32)/1.8#将摄氏度转化为华氏度print("转换后的温度是{:.2f}C".format(c))#eva......