我是python编程的新手,为什么k的赋值给出'None'值
> >>> l=[2,3,4]
> >>> k=l.append(14)
> >>> print k
None
> >>> print l
[2, 3, 4, 14]
Run Code Online (Sandbox Code Playgroud)
在上面的示例List中,我将14值附加到列表然后分配给k但是k正在打印无请告诉我它打印的原因是否而不是附加列表?
谢谢mukthyar
我需要理解为什么:
years = range(2010,2016)
years.append(0)
Run Code Online (Sandbox Code Playgroud)
是可能的,返回:
[2010,2011,2012,2013,2014,2015,0]
Run Code Online (Sandbox Code Playgroud)
和
years = range(2010,2016).append(0)
Run Code Online (Sandbox Code Playgroud)
要么
years = [0].extend(range(2010,2016))
Run Code Online (Sandbox Code Playgroud)
不起作用?
我知道这是我收到的消息中的类型错误.但是我想对此背后有更多的解释.
我目前正在学习如何编写python 2.7代码但是我在下面的代码中遇到了一个令人困惑的错误,它尝试(假设效率非常低)返回输入的中位数.
def median(lst):
lst = lst.sort()
median = 0
if len(lst) == 1:
median = lst[0]
elif len(lst) % 2 == 0:
median_sum = lst[len(lst) / 2 - 1] + lst[len(lst) / 2 + 1]
median = median_sum / 2.0
else:
median = lst[len(lst)/ 2 - 1]
return median
print median([1])
Run Code Online (Sandbox Code Playgroud)
上面是我的代码,它不断给我以下错误:
Traceback (most recent call last):
File "C:/Python27/SAVED DOCS/test3.py", line 16, in <module>
print median([1])
File "C:/Python27/SAVED DOCS/test3.py", line 6, in median
if len(lst) == 1:
TypeError: object …Run Code Online (Sandbox Code Playgroud) 我的代码是用python 3编写的,它的目的是打印出回文.它应该遍历2个3位数字的所有回文产品,如下所示:
mylist=[]
for i in range(999,99,-1):
for x in range(999, i-1, -1,):
number=i*x
number=str(number)
if number==number[::-1]:
#print(number)
mylist.append(number)
mylist=mylist.sort(reverse=True)
print(mylist)
Run Code Online (Sandbox Code Playgroud)
请注意已注释的打印件.当它仍然存在时,应该打印出的所有回文都出来了.当我运行我的代码而没有print语句时,控制台只打印出"无".
据我所知,我的逻辑是有序的,为什么会发生这种情况呢?编辑:此外,当我按相反顺序对列表进行排序时,首先是99999.我认为这是因为python看着连续的9并且认为它是最大的.但是,有没有一种简单的方法来获得实际最大的数字?
我明白了:
'NoneType' object has no attribute 'append'
Run Code Online (Sandbox Code Playgroud)
我想从一个空列表开始:
Edate = []
但是Q1)我如何将其定义为将采用日期的列表?
我不确定,所以我输入一个timstamp让我开始:
Edate = [Timestamp('2018-01-01 00:00:00')]
Run Code Online (Sandbox Code Playgroud)
现在是一个1元素列表
现在,我想附加日期:
dates=
1 2018-01-29
2 2017-10-11
3 2017-03-28
4 2016-10-25
5 2016-03-02
6 2015-11-04
7 2015-10-22
8 2014-01-24
9 2014-01-03
10 2013-10-09
Run Code Online (Sandbox Code Playgroud)
但是在尝试这样做时,我遇到了上述错误,我不明白.谢谢
PS-我也想对数字做同样的事情:
entrynumbers = []
data=
0 NaN
1 -31.336
2 -36.012
3 -21.282
4 -41.859
5 -31.381
6 -30.789
7 -27.509
entrynumbers = entrynumbers.append(data)
Run Code Online (Sandbox Code Playgroud) 新手在这里使用python解释器。
为什么我不能对这个字符串列表进行排序?
>>> list = ['296098', '12805', '10445635', '11679960']
>>> print list.sort()
None
>>> print list.sort(key=float)
None
Run Code Online (Sandbox Code Playgroud)
为什么python无法为我排序此字符串列表?
a=[8,2,15,6,1]
a = a.sort()
print a
Run Code Online (Sandbox Code Playgroud)
为什么要打印None?你能详细说明所有功能吗?
帮助我理解我在以下代码中无法识别的问题.
def extend_a_list(list_var):
return list_var.extend([6, 2])
def plus_equals_list(list_var):
list_var += [6]
return list_var
list_var = [1, 2, 3]
print "Extending"
print extend_a_list(list_var)
list_var = [1, 2, 3]
print "Plus Equals"
print plus_equals_list(list_var)
>>> Extending
>>> None
>>> Plus Equals
>>> [1, 2, 3, 6]
Run Code Online (Sandbox Code Playgroud)
延伸是给予None.这是为什么?
我有这个代码:
myList = [1, 2, 3, 4, 5]
if (myList.remove(4)):
print "We removed 4, so this is true!"
print myList
Run Code Online (Sandbox Code Playgroud)
当我运行它时,这就是我得到的:
[1, 2, 3, 5]
Run Code Online (Sandbox Code Playgroud)
因此,似乎在if语句的条件中从列表中删除了"4",但if语句最终没有为"True",因为print语句没有打印到控制台.为什么if语句是假的?
我正在尝试对列表进行排序:
x=['1', '3']
Run Code Online (Sandbox Code Playgroud)
使用 x.sort()
我希望它按升序排序,但是当我打印出结果时,我得到“无”
x=['1', '3']
r=x.sort()
print(r)
Run Code Online (Sandbox Code Playgroud) 这是我很长一段时间写的最短的例子之一
我创建并更新了一个元组3
In [65]: arf=(0,1,[1,2,3])
In [66]: arf=(arf[0],arf[1], arf[2] )
In [67]: arf
Out[67]: (0, 1, [1, 2, 3])
Run Code Online (Sandbox Code Playgroud)
所以重新分配工作.
现在我尝试改变它的内容.
In [69]: arf=(arf[0],arf[1], [2] )
In [70]: arf
Out[70]: (0, 1, [2])
In [71]: arf=(arf[0],arf[1], arf[2].append(3) )
In [72]: arf
Out[72]: (0, 1, None)
Run Code Online (Sandbox Code Playgroud)
我回来了吗??? 嘿,是什么给出的?对不起,我是一个蟒蛇菜鸟.
当我遇到以下情况时,我正在解决问题的解决方案......
我开始创建一个变量test,并将其初始化为一个列表.
test = [3, 2, 1]
Run Code Online (Sandbox Code Playgroud)
在.sort()我的名单上玩并调用它后test,我尝试使用print如下:
print test.sort(reverse = True)
Run Code Online (Sandbox Code Playgroud)
输出是None,我只是好奇为什么这是.
我试图检查两个字符串是否是字谜.但对于以下代码:
string1 = 'listen'
string2 = 'silena'
s1 = list(string1)
s2 = list(string2)
if (len(s1)!=len(s2)):
print("Not an anagram")
else:
if(s1.sort() == s2.sort()):
print("it is an anagram")
else:
print("not an anagram")
Run Code Online (Sandbox Code Playgroud)
python抛出一个输出,字符串是字谜.对于if条件,它将答案抛给true而不是False.
python ×13
list ×6
python-3.x ×4
append ×3
sorting ×2
extend ×1
if-statement ×1
nonetype ×1
palindrome ×1
printing ×1
python-2.7 ×1
reverse ×1
tuples ×1
typeerror ×1