首页 > 编程语言 >python基础 第2章 Python 的基本要素

python基础 第2章 Python 的基本要素

时间:2024-11-29 15:00:10浏览次数:11  
标签:输出 基本要素 python 程序 Python 字符串 print hello

2.1 Python 开发环境的搭建

2.1.1 python安装包下载及安装

可以到Python的官网下载Python的安装包,针对macOS和Windows系统有不同的版本。Download Python | Python.org

一般来说,适用于Windows系统的是64位的版本。(群文件有)

安装包的名字类似:

macOS 64-bit universal2 installer

Windows installer (64-bit)

访问国外的网站一般都很慢,只打开网页可能就要几分钟,要耐心等待。

并非下载好安装包后就可以使用Python,必须运行安装包进行安装。

安装Python开始界面如图2.1.1所示,当然版本号会有所不同。

请注意要勾选下方的两个复选框,尤其是"Add python.exe to PATH”复选框。否则在后续安装的开发环境PyCharm中可能找不到Python的解释器。

单击“Install Now”,用默认方式安装即可。

如果自定义安装,注意最好不要将 Python安装到名称为中文名的文件夹下。在Windows中,默认情况下Python会被安装在类似下面的文件夹下:

 C:\Users\guo_w\AppData\Local\Programs\Python\Python312

Users文件夹在Windows资源管理器中显示为“用户”文件夹,guo_w是用户名,每台计算机都不一样。运行该文件夹下的python.exe就可启动Python的解释器。

2.1.2 pycharm安装

1. 进入pycharm官网,点击下载(群文件有)

PyCharm:适用于数据科学和 Web 开发的 Python IDE (jetbrains.com.cn)

下载完成后点击打开。下一步

2. 选择需要安装的位置进行安装

在这里插入图片描述

3. 全部勾选并点击下一步

在这里插入图片描述

4. 点击安装

在这里插入图片描述

安装中

在这里插入图片描述5. 这里我选择否,然后点击完成

在这里插入图片描述

6. 这里问你要不要导入之前的配置,我选择否,然后点击OK

2.1.1 python程序运行方式

1. 以命令方式运行python程序

Windows下,Win+R键,可以弹出”运行“窗口,敲”cmd"确定,弹出cmd窗口

cmd命令行窗口如下(输入“py”然后回车,出现版本信息就已安装成功):

第一步:在任意路径下,新建一个文本文件,

输入以下内容,

修改文件名为 hello.py

image-20240910091009301


 print('Hello, Python!')

第二步: 在文件所在目录的地址栏中输入 cmd (当前目录打开 cmd )

第三步:执行python文件

 hello.py

查看文本文件

 notepad hello.py

2. 用IDEA编辑程序并运行python程序

打开后【File】——【New file】

先点击保存【File】——【save】,命名程序文件

写入代码

点击【run】

3. 用PyCharm运行python程序

(1)【File】——【New Project】新建一个工程

(2)【File】——【New】新建一个Python File并随意命名

(3)Run菜单运行程序。如果同时打开多个.py程序,运行当前程序则右键【Run】。以后要运行同一个文件,在右上方点

将pycharm改为中文界面

2.2 python的语句

下面是一个非常简单的Python程序:分两行输入两个数,并输出它们的和:

 a = int(input())
 b = int(input()) 
 print(a+b)

上述程序运行后,输入一个数并按 Enter 键,再输入一个数并按 Enter 键,程序就会输出两个数的和。

在PyCharm中编写该程序,运行后的效果如图所示。

在下方的窗格中输入4并按Enter 键,再输入5并按Enter键,程序就会输出9。

Python 程序中的一行可以称为一条语句。

Python 程序是用英文字母、数字、标点符号和空格写成的。应该在英文输入状态而非中文输入状态下输入程序,确保输入的字符都是英文半角的字符。如果输入各种中文全角的标点符号或空格(中文全角的标点符号和空格看起来比英文的更宽),那么 Python 的开发环境就会用红色浪纹线提示语句非法。

除非满足必须缩进的特定条件,Python 程序的每一行都要靠左顶格书写,行首不能加空格。比如下面的程序:

 a = int (input ())
     b = int (input ())
 print (a+b)

第二行行首加了空格,这是不允许的。有的开发环境会在本行开头处加红色下画线,提示错误。

在一行的中间加些空格,是不会提示错误的。比如“b=a”和“b = a”是一样的,“print(a+b)”和“print(a + b)”也是一样的。

如果一条 Python 语句太长,看着不方便,则可以分若干行写,但并不是随意断行都可以。如果随意断行,就要在断行处写"\”(在有些地方断行可以不写“\”)。一条语句分多行的情况下,除第一行外,其他行随便怎么缩进都行。

例如:

 c = 1 + 2\
     +3
 print ("hello",
        c)
 print ("hello\
 world")

输出:

一条语句分多行这件事情很不重要,搞不清规则也没关系,用的时候再试也不迟。

实际上, Python还允许将多条语句写在同一行,语句之间用“;”分隔即可。如:

 a = int(input()); b = int (input()); print (a+b)

一般情况下,不推荐在一行中写多条语句。

常见错误: Python程序中的括号一定是成对出现的,如果在行末出现红色下画线提示有错误,通常就是因为括号没有成对出现(左括号和右括号数目不等)。

2.3 注释

软件一般是由多个程序员合作开发的,因此一个程序员常常需要阅读别人编写的代码。想看懂别人编写的代码并非易事,常常会看着看着就恨不得干脆自己重写一遍。即便是自己写的程序,过了一两个月再看,很可能也会想不起来某段代码的作用是什么,为什么要那样写。

因此,在程序中需要书写一些提示,或者解释性的文字,用以说明某段代码的作用。很多公司还会要求程序员在程序中写上自己的名字,以免出了bug找不到责任人。

这部分说明性的、用于帮助自己或别人理解程序的文字称为注释,其不是程序的一部分,不会被执行。几乎所有的程序设计语言都支持注释。

在实际的软件开发工作中,写程序而不写注释,就是不讲“码德”。

对于某段代码,若想将其删掉或者修改,但又不确定这么做是否正确,也可以将删改前的代码变成注释保留在程序中,以后要恢复就容易了。

Python 中的注释以“#”开头,从“#”开始到行末都是注释。例如:

#下面输入两个数,输出其和
a = int(input())	#输入 a
b = int(input())	#输入b
print(a+b)			#输出 a+b 的值

注释不是程序的一部分,因此用什么文字写都行。

一般来说,注释多点没坏处,应该积极编写注释。但是,作用一目了然的代码编写注释,就没有必要了。比如上面程序中的注释,都是画蛇添足,只是为了举例说明单行注释的用法才这么写。

有时候想把连续多行都变成注释行,在每行开头加“#”显然比较麻烦。在 Python 开发环境里,选中这些行,然后按 Ctrl+/组合键,就可以自动在这些行前面添加“#”,将这些行都变成注释行。再按Ctrl+/组合键,可以将其恢复成正常代码。许多教材和网络资料中称 Python 有一种多行注释,是用一对 3 个引号引起来的,这是不正确的说法。

2.4 常量

各种程序设计语言中都有“常量”的概念,表示固定不变的数据。

Python 中的常量有整数(如123)、小数(如34.54)、字符串(如"hello")、 True (表示真)、 False (表示假)、None(表示空)等。

下面程序用于输出一些常量:

print(123)
print(34.54)
print("hello")
print(0b1101) #1 + 0 + 4 +8
print(0xa8)    #8 + 10*16
print(None)		#>>None
print(True)		#>>True

第4 行:二进制整数常量以 0b 开头。比如 0b10 就是 2。

第5行:十六进制整数常量以0x开头。比如0xf就是15,0xa8就是168。

2.5 变量

各种程序设计语言中都有“变量”的概念。变量是用来存储数据的,它有名字,其值可变。例如:

a = 12
b = a			#让b 的值变得和 a 的值一样
print (a+b)	#>>24
a = "hello"
print(a)	#>>hello

第 1行:a 是一个变量,它的值被设置成 12。

第 2 行:b也是一个变量,它的值被设置成和 a的值一样。

第3行:输出 a+b 的值,于是输出24。

第4 行:将 a 的值改成字符串"hello"。

第 5行:输出变量 a 的值,于是输出 hello。

Python中变量名由英文字母、数字和下画线构成,中间不能有空格且不能以数字开头,长度不限。

以下是一些合法的变量名:

name
_doorNum
x1
y
z
a2 
A
number_of_students
MYTYPE

变量名最好能够体现变量的含义(虽然语法上无此要求),以便理解程序。

必要时应该使用多个单词作为变量名,以便一眼看出变量的含义。对于含多个单词的变量名,最好第一个单词小写,后面每个单词首字母大写,例如:

dateOfBirth
numOfDogs
bookPrice

上面这些变量名,含义自明。

如果偷一时之懒,变量名都是a、b、c、x、y、z之类的,过一段时间,自己都会忘记这些变量是做什么用的。

Python 中变量名的大小写是有区别的,即 a 和 A、name 和 Name 是不同的变量名。

Python 预留了一些有特殊用途的名字,称为保留字。

保留字不可用作变量名。部分保留字如下:

and as assert break class continue def del elif else except exec for finally from global if import in is lambda not or pass print raise return try while with yield

如果用保留字作为变量名,Python 会报错。

2.6 赋值语句

赋值语句格式如下:

变量 = 表达式

其作用是对变量进行赋值,即将变量的值变得和表达式的值一样。变量、数字、字符串等,以及将它们通过各种运算符号组合在一起,都可以称为表达式。

表达式在 Python 中是一个很宽泛的概念,没有必要严格描述其定义。

赋值语句中的 “=” 称为赋值号,不要将其理解为数学中的等号。赋值号左边必须是变量。

对一个变量的首次赋值,称为对这个变量的“定义”。程序示例

#prg0010.py
a = "he"		#定义变量 a,其值为字符串"he"
print(a)		#>>he
b = 3+2			#b的值为 5
a = b			#将 a 的值变得和b的值一样
print(b)		#>>5
print(a)		#>>5
b = b + a		#将b的值变为b的值加a的值
print(b)		#>>10
a,b = "he",12	#将a的值变为字符串"he", b的值变为12
print(a,b)		#>>he 12
a,b = b,a		#交换a,b的值
print(a,b)		#>>12 he
c,a,b = a,b,a
print(a,b,c)	#>>he 12 12
a = b = c = 10	#将a、b、c的值都变成10
print(a,b,c)	#>>10 10 10

第 7 行:b = b + a 不是数学中的等式,它的意思是将 b的值变为其原来的值加上 a 的值因此 b 的值变成 5+5,即 10。

第 11 行:将a 和b的值分别变为原来b的值和a的值,即交换 a,b 的值。如果同一个变量同时出现在赋值号的左、右两边,那么出现在右边时取其原来的值,即执行赋值语句前的值同理。

第 13 行就是分别用 a 原来的值、b 原来的值、a 原来的值对c、a、b 进行赋值。

上面程序的输出结果是:

注意: Python程序是顺序执行的,即从上到下依次执行。其他程序设计语言的程序也是这样的。

下面的程序是不对的:

a = b+3
b = 5
print(a)

程序是顺序执行的,首先执行a=b+3,此时就需要用到 b 的值。然而b此时没有值,即没有定义,所以程序在这一行就会提示错误。

2.7 Python 数据类型

Python中的数据有不同的类型。例如,有整数类型的数据如123、100,字符串类型的数据如"hello"、"123"。

每种数据类型有特定的名称,比如整数类型,名称就是int。

下表列出了 Python 中的数据类型的名称、含义以及数据示例。

1.5E6 也可以写成 1.5e6,表示 1.5×10⁶。

bool类型的数据,只有两个取值,即 True 和 False(注意首字母都是大写),表示真和假。

其余数据类型后文会详细讲解。

2.8 字符串简介

2.8.1 字符串的基本概念

Python 中的字符串代表一串文字,必须用单引号、双引号、三单引号或三双引号引起来。

例如:

'abc'、"123 您好"、"67,3"、""this is ok"“等。字符串中可以出现中文。

程序示例:

#prg0020.py
x = "Hello,world!"	#x 的值是一个字符串,其中的文字是 Hello,world!
print(x)			#>>Hello,world!
x = "I said: 'hello'"
print(x)			#>>I said:'hello'
print('我说:"hello"') #>>我说:"hello"
print('''I said:'he said "hello"'.''') #>>I said:'he said "hello"'. 
print("""I said:'he said "hello"'.""") #>>I said:'he said "hello"'.

使用单引号、双引号或三单引号,基本无区别。如果字符串中本身包含单引号,那么用双引号引起来较好,否则字符串中的单引号还要用“转义字符”来表示,不太方便。同理,如果字符串中本身包含双引号,那么用单引号括起来比较好。

"“ 和 ‘’ 也是字符串,引号里面一个字符也没有,称为“空串”。

b = ""
c = ''
print(b)
print(c)

常见错误:误以为字符串里面可以包含变量。需要强调的是,用各种引号括起来的,就是字符串,引号引起来的部分,就是一个个字符(文字),字符串里面不会包含变量。这个错误看似匪夷所思,实际上并不稀有。例如下面的代码:

s = 1.75
print("I am s m tall")	#>>I am s m tall

第 2 行代码中的“s”就代表英文字母“s”,不代表第 1 行代码中的变量 s,因此上述代码输出的结果就是“I am s m tall”,s 不会被替换成 1.75。

同理:

print ("4+5")

输出结果是 4+5,而不是 9。

想要输出一串文字就要通过字符串来实现。print(hello,world)这样的语句不会输出“hello,world”,因为语句中的 hello,world 没有用引号引起来,不能代表一串文字,而是代表两个变量 hello 和 world。

2.8.2 字符串的下标

有 n 个字符的字符串,其中的每个字符从左到右依次编号为 0,1,2,…n-1,从右到左依次编号为-1,-2,-,-n。

编号也称为下标。通过在方括号中填入下标的方式,就能查看字符串中指定位置的字符:

a = "ABCDEFG"
print(a)
print(a[0])
print(a[-7])
i = 3
print(a[i])		#>>D 变量也可以作为下标
字符串ABCDEFG
下标从左往右0123456
下标从右往左-7-6-5-4-3-2-1

值为整数的表达式,都可以作为下标使用。

Python中,单个字符就是长度为1的字符串。上面程序中的a[0]、a[-1]都是长度为1的字符串。

字符串中的字符是不能修改的。例如:

a= "ABCD"a[1] = "K"

上面第2条语句试图修改a中下标为1 的字符,这是不可行的,会引发运行时错误。

2.8.3 连接字符串

用“+”可以将若干个字符串连接起来得到新的字符串。

若a和b都是字符串,则a+b也是一个字符串,内容是a的内容后面再拼接上 b 的内容。例如:

a = "ABC"
b = "123"
print("a:" + a)
print("b:" + b)
a = a + b
print("a:" + a)		#>>ABC123
a = a + a[1] 	#a[1]是单个字符,也是长度为1的字符串
print("a:" + a)		#>>ABC123B
a += b			#a += b 等价于a = a + b
print("a:" + a)		#>>ABC123B123

2.8.4 用 in、 not in 判断子串

一个字符串中连续的一部分,称为该字符串的子串。一个字符串的子串也包括它自身。在实际应用中,经常需要判断一个字符串是不是另一个字符串的子串。

若a是b的子串,则a in b的值是True,否则是False;

若a不是b的子串,则a not in b的值是True,否则是False。

例如:

a = "Hello"
b = "Python"
print("el" in a)	#>>True
print("he" in a)	#>>False	字符串的大小写是有区别的
print ("th" not in b)	#>>False
print("lot" in a)		#>>False
#print(3 in "123")	#运行错误,不能判断整数是否为字符串的子串
print("3" in "123")

2.8.5 字符串和数值的转换

字符串和数值可以互相转换,具体方法如下。

2 -->2.0 整数转浮点数 自动

2.1--> 2 浮点数转整数 强制

int(x):把字符串x转换成一个整数。

float(x):把字符串 x 转换成一个小数,x 的形式可以是整数、小数。

str(x):把数值 x 转换成一个字符串。

eval(x):把字符串 x 看作一个Python 表达式,并求其值。

“把x 转换成……”是一种约定俗成的说法,从字面上看是x变了,其实上述转换操作不会改变x,而会生成一个新的值。所以精确的说法是“从x转换出一个 .......”。

程序示例:

#pгg0030.ру
a = 15
b = "12"
c = a + b	#错误的语句,字符串和整数无法相加
print(a + int(b))	#>>27 b 没有变成整数,int(b)的值是整数 12
print(str(a) + b)	#>>1512 str(a)的值是字符串"15"
c = 1 + float("3.5")	#float("3.5")的值是小数 3.5
print(c)	#>>4.5
print(3 + eval("4.5"))	#>>7.5
print(eval("3+2"))	#>>5
print(eval("3+a"))	#>>18

eval(x)的值,是将字符串 x 的内容看作 Python 表达式后,求这个表达式的值得到的结果。

例如,第 8 行中的 eval("4.5"),将字符串"4.5"中的文字 4.5 看作一个 Python 表达式,那么其值就是小数 4.5。

同理,第 9 行将 3+2 看作 Python 表达式,其值就是 5。

第 10 行,eval("3+a")的值就是表达式3+a的值,由于此时a的值为15,因此3+a的值是18。

需要注意的是,int(x)要求字符串 x 必须是整数的形式(只包含数字),float(x)要求字符串 x 必须是整数或者小数的形式,否则转换不合法,会导致程序运行出错。

常见错误:程序出现运行时错误(Runtime Error),经常是由于做了不合法的转换。如x为"a12"或"12.34"时做int(x),或x为"abc"时做float(x)。将字符串与数值相加也会导致运行时错误。

另外,int(x)也能用于从小数 x 转换出整数,转换的规则是去尾取整,即舍去小数点后面的部分。

例如, int(4.9)的值是4, round(x)用于求得和小数x最接近的那个整数。

例如,round(4.9)的值是5, round的策略不是四舍五入,因为四舍五入是不公平的,长此以往将导致偏大的累积误差。round的策略是五有时舍,有时入。比如round(4.5)和round(3.5)的值都是 4。

2.9 输入和输出

2.9.1 输入语句 input

Python 中输入语句格式如下:

x = input(y)

x是变量: y是字符串或任何值为字符串的表达式, y也可以不写。

此语句输出 y,并等待输入。输入并按 Enter 键后(注意一定要按 Enter 键),input(y)的值就是输入的文字,并且该值被赋给x。y可以是提示信息。如果不写y,就不会输出任何信息,直接等待输入。例如:

s = input("请输入您的名字:")
print (s +",您好!")

程序运行时显示:

然后等待输入。若输入"Tom Lee”并按Enter键,则程序输出:Tom Lee,您好!

运行效果如下:

注意:执行x=input()后,x的值一定是一个字符串,即使输入的是一个整数。在 PyCharm 中运行需要输入的程序,则在 PyCharm 下方的窗格进行输入,输出结果也会出现在下方,如图 所示。

界面中的PyCharm程序运行时,分两行输入10和20,输出1020

注意:使用一次 input 会输入一行的内容。如果是在一行里输入数据,比如在一行里输入多个整数并用空格隔开,那么也只能使用一次 input。如何使用一次input就得到多个整数,后文会说明。如果输入数据有n行,就必须要使用n次input

2.9.2 输出语句 print

Python 用 print 语句进行输出。print 语句格式如下:

print(e1, e2, e3,...)

准确地说,print 是一个“函数”,括号内的是函数的参数。参数 el、e2、e3 等都是表达式,可以有任意多项。

上面的语句会依次输出每项的值,各项之间用空格分隔,然后换行。换行的意思是,下次再执行 print,就会输出到新的一行。例如:

print("hello")
print("world")

上面程序的输出结果是:

如果不希望 print 的输出结果换行,则可以用 end 参数指定输出的结束符。例如:

x,y,z=1,2,3
print(x,y,z, end=" ")

上面程序会连续输出多项,各项之间以空格分隔,输出以后不换行。

end=""表示结束符是空串。不指定 end 就默认 end 的值是换行符,因此会导致输出结果换行。例如:

x,y,z=1,2,3
print(x,y,z, end=" ")
print("hello",end="#")
print("world",end="\n")
print("abc")

上面程序的输出结果是:

请注意,输出完“123”后没有换行,再执行 print("hello")时就在同一行紧接着输出。

print 输出多项的时候,可以用 sep 参数指定分隔符:

print(3,4, 5, sep="?")
print(3,4,5, sep="")	#分隔符是空串就等于没有分隔符
print(3,4,5, sep=" ")   #分隔符是空格
print(3,4,5, sep="..")

输出结果是

2.9.3 输出格式控制

s = 1.75
print("I am s m tall")	#>>I am s m tall

我们已经知道,上面的程序并不会输出“I am 1.75 m tall"。然而,将变量s的值嵌输出结果,又是我们的需求。

解决办法之一就是使用“格式控制符”。

有一些以“%”开头的字符组合,用在字符串中,可以指明此处需要用某个常量或量的值替代,这样的字符组合称为“格式控制符”。

常见的格式控制符如下。

%s:表示此处要用一个字符串替代。

%d:表示此处要用一个整数的十进制形式替代。

%x:表示此处要用一个整数的十六进制形式替代。

%f:表示此处要用一个小数替代。

%.nf:表示此处要用一个小数替代,保留小数点后面n位,四舍六入,五则可能入可能舍(注意,有“.”)

注意:格式控制符只能出现在字符串中。

下面是程序示例:

#prg0040.py
age = 18
s = "I am td years old." % age
print (s)	#>>I am 18 years old.
h = 1.746
print("My name is %s,I am %.2fm tall." % ("tom",h))
#>>My name is tom,I am 1.75m tall.
print("%d%s" (18,"hello"))
#>>18hello
print("%.2f,%.2f%%,%x"%(5.225,5.325,255))
#>>5.22,5.33%,ff

第2行: %d 表示此处应该用一个十进制整数替代。

包含格式控制符的字符串,后面跟一个%,再跟着用来替代格式控制符的表达式,就会形成一个替换后的字符串。本行赋值号右边就形成了一个将%d替换成age的值18以后的字符串,即"I am 18 years old."。

要得到同样的字符串,也可以写为:

s = "I am " + str(age) + " years old."

第5行:如果字符串中包含多个格式控制符,则需将用以替换的多个表达式用括号括起来,并用逗号隔开。本行中, "tom"用以替换%s, h 值用以替换%.2f。%.2f 表示此处小数只保留小数点后面2位,所以替换的结果就是1.75, %f则一般默认保留小数点后面 6 位。

第8 行:要表示% 字符本身,就要连写两遍。%x 表示其对应的整数 255 应该呈现十六进制格式形式,即ff。

格式控制符应该与其对应的替换表达式类型匹配。比如下面这个表达式是非法的:

"Please give me %d dollars" %"123"

因为%d要求替换项必须是一个值为整数的表达式,而"123"是一个字符串,所以非法。

2.10 列表简介

2.10.1 列表的基本概念

列表的基本概念列表是任意多个元素的有序集合,元素的类型可以不同,格式如下:

[元素0,元素 1,元素 2,...]

例如: [1,2,3]、 [1,'jack',4,21]都是列表。

[]也是列表,是一个没有元素的空列表。

列表的元素在内存中是连续存放的。列表有序,体现在每个列表元素都有一个编号,即下标。下标从 0 开始。通过将下标填入[]中的形式,可以访问列表的特定元素。

即如果 a是列表,x 是下标,则 a[x]表示 a 中下标为 x 的元素。例如:

empty = []	#empty 是空列表
list1 = ['Xiaomi', 'Runoob', 1997, 2000] 
list2 = [1, 2, 3, 4, 5, 6, 7]
print(list1[0])	#>>Xiaomi
print(list1[-4])
list1[2] = 'ok'	#更改了列表中下标为2的元素,即1997
print(list1)	#>>['Xiaomi','Runoob','ok',2000]

列表下标的使用规则和字符串的一样,一个有 n 个元素的列表,元素的下标从左到右依次为 0,1,2, ,n-1,从右到左依次为-1,-2,…,-n。有 n 个元素的列表,下标合法的范围就是 0n-1,以及-n-1。

任何值为整数的表达式,都可以作为下标使用。但是,如果下标超过合法的范围(称为“下标越界”),就会引发程序运行时错误。

常见错误:列表、字符串或元组的下标越界,是引发程序运行时错误的最常见原因之一。

和字符串类似,也可以用 a in b 和 a not in b 判断元素 a 是否在列表 b中。例如:

1st = [1,2,3,"4",5]
print(4 in 1st)		#>>False
print("4" in 1st)	#>>True
print(3 not in 1st)	#>>False

第2 行结果为False,是因为整数4 并不在列表 1st里面,列表 1st 里面有字符串"4"。

2.10.2 将字符串分割成列表

若x是字符串,则x.split()的值是一个列表,包含字符串x经空格、制表符(对应键盘上的Tab键)或换行符分割得到的所有子串。x.split()不会改变x。

程序示例:

#prg0050.py
print("ab cd hello ".split())	#>>['ab', 'cd', 'hello']
s = "12 34"
print(s.split())	#>>['12', '34']
print("34\t45\n7".split())	#>>['34', '45', י7י]
print("abcd".split())	#>>['abcd']

第 1 行:字符串"ab cd hello "用空格分割后的结果是一个列表,里面包含分割后得到的子串,即列表['ab','cd','hello']。

第 4 行:\t 表示制表符,\n 表示换行符。print("34\t\t45\n7")的结果如下:

第 5 行:"abed"中没有空白字符,所以分割后的结果就是一个只有一个字符串的列表。

例题2.10.2.1: A+B 问题(P0010)。

在一行输入两个整数,请输出它们的和。

解题程序:

s = input()
numbers = s.split()
print(int(numbers[0]) + int(numbers[1]))

如果输入“3 4”并按 Enter 键,则 input()的值是字符串"3 4",并赋值给 s。经过第 2行的 split()以后,numbers 是一个列表,其值是['3','4']。不能直接将 numbers 的两个元素相加,那样加出来就是字符串'34'。

因此要在第3行将两个元素分别转换为整数后再相加。前两行代码也可以合并成更为简洁的一行代码,如下:

numbers = input().split()

2.11 常见语法错误排查

程序有语法错误时, PyCharm会在相关代码处用红色浪纹线标识出来。

将鼠标指针移到红色浪纹线处,PyCharm 会弹出错误提示信息。

常见的错误提示信息有:

Unresolved reference 'x' #x没有定义
Unexpected indent	#不该有的缩进
Colon expected	#少了冒号

再次强调,不要把标点符号输入成中文全角的,这种情况下也会弹出错误提示信息。

有时几行代码明明看着缩进是一致的,却会提示缩进相关错误。这可能是因为有的行缩进用的是制表符,有的行用缩进的却是和制表符等宽的4个空格。这种情况下,可以选中要缩进的若干行,按几次Shift+Tab组合键把它们靠左顶格,再按Tab键让它们一起缩进。

注意:有时红色浪纹线显示在某一行,实际上错误却是在上一行的末尾,尤其是上一行末尾少写了一个“)”,造成括号不配对。如果多写了一个“)”,错误提示信息会是"End of statement expected”

标签:输出,基本要素,python,程序,Python,字符串,print,hello
From: https://blog.csdn.net/Z_Date/article/details/144136769

相关文章

  • Python 爬虫:抓取视频平台上的弹幕数据
    在现代视频平台中,弹幕(也称为"弹幕评论")是一种用户参与互动的独特形式。观众可以在观看视频的同时,发送实时评论,这些评论以“弹幕”形式出现在视频上方。弹幕不仅是观众情感的表达,也是视频平台的一种社交互动形式。抓取视频平台上的弹幕数据,不仅可以分析用户的互动行为,还可以深入......
  • 【Python学习】2024Python安装与配置IDE汉化集活的全套教程
    包含编程资料、学习路线图、源代码、软件安装包等!【[点击这里]】领取!【一】Python解释器下载【运行环境】【1】Python官网包含编程资料、学习路线图、源代码、软件安装包等!【[点击这里]】![https://www.python.org](官网进不去的可以点击点击领取,100%免费!安装包)......
  • 《Python初学习笔记》
    一、对python的认识Python是由“龟叔”创造的编程语言,不仅可以做日常办公自动化的事,还能搭网站、当网络游戏后台。但像做操作系统、3D游戏和手机应用就不太合适。而且运行有点慢,代码加密也难搞。二、安装过程Windows系统:轻松访问Python官网,下载适合的安装包,双击运行,选择......
  • 2024年Python&pycharmIDE安装与配置汉化教程!
    【一】Python解释器下载【运行环境】包含编程资料、学习路线图、源代码、软件安装包等!【[点击这里]】!【1】Python官网[https://www.python.org](官网进不去的可以点击点击领取,100%免费!安装包)【2】Python各版本解释器官网【二】Windows系统安装Python解释器【1】......
  • 【人工智能】迁移学习在Python中的应用:微调预训练模型的实战指南
    《PythonOpenCV从菜鸟到高手》带你进入图像处理与计算机视觉的大门!迁移学习是深度学习中一项重要技术,通过利用预训练模型的知识,可以在小数据集上实现高效学习,显著降低训练成本。特别是在数据稀缺的场景下,迁移学习成为一种非常有吸引力的解决方案。本文从理论到实践全面解......
  • 【Python】高效的数据操作利器:Python中的集合运算详解
    《PythonOpenCV从菜鸟到高手》带你进入图像处理与计算机视觉的大门!在现代数据处理任务中,集合操作作为一种高效的数据管理方式,广泛应用于去重、交集、差集等操作。Python的set类型以其强大的功能和直观的语法,成为处理集合运算的首选工具。本篇文章将深入剖析set的工作......
  • 一节课理解Python的字符串和其使用方法
    1.字符串    字符串就是一串字符,是编程语言中表示文本类型的数据。1.1Python中的字符串    在Python中的字符串可以使用一对单引号或者一对双引号来定义。也可以用三引号来定义多行文本。字符串中的内容可以是任意文本。1.2Python字符串的书写方法  ......
  • python基础语法
    从上到下执行1.字符串连接加号连接即可2.单双引号看外面外单内双不会报错外双内单也不会报错转义符如果想符号被识别就加上\产生特殊意思3.换行加\n4.三引号换行:三单包住或者三双包住都可实现变量规格与java无异在此不赘述使用math包importmath即可使用math库可......
  • Python那些事儿 - 用函数实现学生管理系统
    第十一回归隐山林前言我们在前边用十回的内容讲解了函数的基础知识,包括认识Python,数据类型,数据容器,控制语句和函数。将这些知识点梳理下来,我们发现学习Python其实没有那么难。这一回我们就运用前边学到的知识,做一个学生管理系统。......
  • 在Python中什么是面向对象思维?
    目录1.引言2.面向对象编程(OOP)的基础概念2.1面向对象编程的定义2.2面向对象与面向过程的区别3.Python中的面向对象编程核心要素3.1类与对象3.2属性与方法3.3封装、继承与多态4.Python实现面向对象的基础操作4.1定义类与实例化对象 4.2类的属性与方法4.......