python数据结构输入输出及控制和异常

  • Post category:Python

我可以为您详细讲解一下“Python数据结构输入输出、控制和异常”的完整攻略。

Python数据结构输入输出及控制

基本输入输出

输出

要在Python中输出内容,可以使用print()函数。比如:

print("Hello World!")

这段代码将会输出:Hello World!

你可以在输出的时候使用格式化字符串来更加灵活的控制输出内容,比如:

name = "Tom"
age = 18
print("My name is %s, I'm %d years old." % (name, age))

这段代码将会输出:My name is Tom, I'm 18 years old.

其中,%s表示字符串占位符,%d表示整数占位符。

还有一种使用format()函数在输出时控制格式的方法,比如:

name = "Tom"
age = 18
print("My name is {}, I'm {} years old.".format(name, age))

这段代码将会输出:My name is Tom, I'm 18 years old.

输入

要在Python中获取用户输入,可以使用input()函数。比如:

name = input("Please enter your name: ")
print("Hello, {}".format(name))

这段代码将会让用户输入他/她的名字,并打印出问候语。

控制语句

条件语句

条件语句可以让我们根据不同条件来执行不同的代码块,常用的条件语句有:ifelifelse

一个简单的例子,比如:

x = 1
if x > 0:
    print("x is positive")
elif x == 0:
    print("x is zero")
else:
    print("x is negative")

这段代码将会输出:x is positive

循环语句

循环语句可以让我们多次执行同一段代码,常用的循环语句有:whilefor

一个简单的例子,比如:

x = 0
while x < 10:
    print(x)
    x += 1

这段代码将会输出0到9这10个数字。

break和continue语句

在循环语句中,break可以让我们提前结束循环,continue可以让我们跳过本次循环,继续执行下一次循环。

一个简单的例子,比如:

x = 0
while x < 10:
    x += 1
    if x == 5:
        continue
    print(x)
    if x == 8:
        break

这段代码将会输出1到4、6、7、8这几个数字。

异常处理

在程序运行的过程中,可能会出现各种各样的错误。如果不进行处理,程序就会因为错误而终止运行。为了让程序更加健壮,我们需要使用异常处理机制来处理错误。

异常处理可以使用tryexcept语句来捕获和处理异常。一个简单的例子,比如:

try:
    x = int(input("Please enter a number: "))
    y = 10 / x
    print("y is {}".format(y))
except ZeroDivisionError:
    print("Cannot divide by zero")
except ValueError:
    print("Invalid input")
except Exception as e:
    print("Unknown error: {}".format(e))

这段代码将会让用户输入一个数字,并计算10除以这个数字的结果。如果输入的是0,则会输出“Cannot divide by zero”,如果输入的不是数字,则会输出“Invalid input”,如果出现其他异常,则会输出异常信息。

示例

示例1:计算平均数

这个示例将向用户请求输入10个数字,然后计算它们的平均数并输出。如果用户输入的不是数字,则会提示错误,并要求重新输入。

sum = 0
count = 0
while count < 10:
    try:
        num = float(input("Please enter a number: "))
        sum += num
        count += 1
    except ValueError:
        print("Invalid input, please try again")
average = sum / count
print("The average is {}".format(average))

示例2:猜数字游戏

这个示例是一个猜数字游戏。程序会随机生成一个0~100之间的数字,用户要在最少的次数内猜中这个数字。如果用户输入的数字太大或太小,则程序会提示用户调整答案的方向。

import random

num = random.randint(0, 100)
count = 0
while True:
    guess = int(input("Please guess a number between 0 and 100:"))
    if guess > num:
        print("Your guess is too big, please try again")
        count += 1
    elif guess < num:
        print("Your guess is too small, please try again")
        count += 1
    else:
        count += 1
        print("Congratulations, you've guessed the number in {} times".format(count))
        break

以上就是Python数据结构输入输出、控制和异常的完整攻略,希望能对你有所帮助。