送给python初学者在简单编程练习题中的小技巧

一些python的初学者,尤其是由别的语言入门的,比如c语言,在面对python学习时,在一些编程思路上的思维还没有转变好,下面是一些适用于初学者用python进行一些简单编程练习题的小技巧

输入

由空格分隔的一行数据,输入到列表中
list = input().split(" ")
input()函数输入值的类型默认是字符串,split()函数表示分隔数据串的依据,括号里面就是按什么分隔,比如按逗号分割的话就是将双引号中的空格改成逗号,示例如下
这里写图片描述
如果想将列表list中的数据转换成整数
list = [int(ls) for ls in list]
或者
list = [int(list[i]) for i in range(len(list))]
中间是for循环的简化用法,这样较为简单的将列表里面的数据类型进行了转换,如下
这里写图片描述
这整个转换过程还有一种更简便的方法,我们后面会说到

如果是并不想将数据输入到列表中,而是直接输入到变量中
一个数据直接以整数形式输入到变量中
a = int(input())
两个以空格分隔的数据直接输入到变量中
a,b = map(int, input().split())
map()函数语法如下

map() 会根据提供的函数对指定序列做映射。

map(function, iterable, …)
function – 函数
iterable – 一个或多个序列
第一个参数 function,以参数序列中的每一个元素调用function函数,返回包含每次function函数返回值的新列表。

此函数返回的是一个迭代器,在此,初学者并不需要具体知道这是什么。
如果对上述函数的介绍并不是很明白的话,简单来说,就是将序列里面的数据一个个传入到函数中,函数传回的每个结果我们可以用变量接收。也就是我们传入的字符串被按空格分隔成序列后,序列里的每个值经int()函数转换后输出到变量a,b中
至于这次的split()函数中并没有写参数的原因是,split()函数里参数的默认值就是空格,所以,当split()函数中的参数是空格时,不用填入可以直接使用
所以,上面说到的list列表里面的输入和转换,可以直接简化为
list = map(int, input().split(' '))
送给python初学者在简单编程练习题中的小技巧_第1张图片

输出

输出列表中数据时,很多时候我们并不想要输出括号和引号,这个只需要在输出时稍稍改动一下就行了
print(' '.join(list))
单引号中的符号表示这些数据以什么分隔,如下
送给python初学者在简单编程练习题中的小技巧_第2张图片
如果是一串数据直接输出,用空格隔开
print(i,end = ' ')
print中的end参数控制输入的数据用什么间隔,默认值是’\n’,将其的值改成别的符号,就能控制输出数据的分隔符号
送给python初学者在简单编程练习题中的小技巧_第3张图片

另外一些小技巧

  • list.append()在使用前,如果list列表在之前未赋值,则需要在之前用list = []赋值一下,不然会报错:descriptor ‘append’ of ‘list’ object needs an argument
  • 一重列表的初始化有很多方法,比如直接赋值,通过range()函数等,双重列表的初始化:list = [[0 for i in range(5)]for i in range(6)],这就是定义了一个五列六行的列表,并初始化为0
    这里写图片描述

你可能感兴趣的:(送给python初学者在简单编程练习题中的小技巧)