Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
数组python,输入字符串更改为List并输出int_Python_Arrays_Python 3.4 - Fatal编程技术网

数组python,输入字符串更改为List并输出int

数组python,输入字符串更改为List并输出int,python,arrays,python-3.4,Python,Arrays,Python 3.4,有人能帮我解决我的问题吗? 问题是, 如果iam输入int(1,2,3,4,5,6,7,8,9,0)总是错误 data = input() array = list(data) table = {" ":270, "a":0, "b":90, "c":180, "d":270, "e":0, "f":90, "g":180, "h":270,

有人能帮我解决我的问题吗? 问题是,

如果iam输入int(1,2,3,4,5,6,7,8,9,0)总是错误

data = input()

array = list(data)

table = {" ":270,
         "a":0,
         "b":90,
         "c":180,
         "d":270,
         "e":0,
         "f":90,
         "g":180,
         "h":270,
         "i":0,
         "j":90,
         "k":180,
         "l":270,
         "m":0,
         "n":90,
         "o":180,
         "p":270,
         "q":0,
         "r":90,
         "s":180,
         "t":270,
         "u":0,
         "v":90,
         "w":180,
         "x":270,
         "y":0,
         "z":90,
         "0":180,
         "1":270,
         "2":0,
         "3":90,
         "4":180,
         "5":270,
         "6":0,
         "7":90,
         "8":180,
         "9":270,
         "!":0,
         "@":90,
         "#":180,
         "$":270,
         "%":0,
         "^":90,
         "&":180,
         "*":270,
         "(":0,
         ")":90,
         "-":180,
         "_":270,}



for i in range(len(array)):

    print(array[i])

    print(("{["+array[i]+"]}").format(table))
错误位于:

例:如果am输入a#2


不幸的是,您不能使用整数作为格式语言中
元素索引
的字典的字符串键。这是格式语言的一个限制,它将整数
元素_索引
视为整数。不幸的是,文件中没有明确说明这一点,只是说:

元素_索引::=整数|索引_字符串


不幸的是,您不能使用整数作为格式语言中
元素索引
的字典的字符串键。这是格式语言的一个限制,它将整数
元素_索引
视为整数。不幸的是,文件中没有明确说明这一点,只是说:

元素_索引::=整数|索引_字符串


我想你会得到同样的结果

data = input()

for char in data:
    print(char)
    print(table[char])

我想你会得到同样的结果

data = input()

for char in data:
    print(char)
    print(table[char])
从以下文件:

字段_name本身以一个arg_name开头,该arg_name可以是数字,也可以是数字 或者一个关键词如果它是一个数字,则表示位置参数

由于arg_name不是以引号分隔的,因此无法指定 字典中的任意字典键(例如字符串'10'或':-]') 格式字符串

字段_name的语法规范如下所示

field_name        ::=  arg_name ("." attribute_name | "[" element_index "]")*
我认为括号表示arg_name可以是
dottribute
或索引表达式,
[2]
,因此形式
'10'
的任意字典键限制适用-如果这是正确的,文档可能更清晰

>>> d
{'1': 123, 'a': 4}
使用
''{['1']}'
作为格式字符串,返回一个双引号字符串,该字符串不起作用

>>> '''{['1']}'''.format(d)
Traceback (most recent call last):
  File "<pyshell#98>", line 1, in <module>
    '''{['1']}'''.format(d)
KeyError: "'1'"

>>> d.__getitem__("'1'")
Traceback (most recent call last):
  File "<pyshell#100>", line 1, in <module>
    d.__getitem__("'1'")
KeyError: "'1'"
.format
无法将类似于
'2'
的字符串传递给
\uu getitem\uuuuuuuuu

>>> '''{[1]}'''.format(d)
Traceback (most recent call last):
  File "<pyshell#101>", line 1, in <module>
    '''{[1]}'''.format(d)
KeyError: 1
>>>

如果字典有一个双引号键,那么它可以工作

>>> d["'1'"] = 'foo'
>>> d
{'1': 123, "'1'": 'foo', 'a': 4}
>>> "{['1']}".format(d)
'foo'
>>>
从以下文件:

字段_name本身以一个arg_name开头,该arg_name可以是数字,也可以是数字 或者一个关键词如果它是一个数字,则表示位置参数

由于arg_name不是以引号分隔的,因此无法指定 字典中的任意字典键(例如字符串'10'或':-]') 格式字符串

字段_name的语法规范如下所示

field_name        ::=  arg_name ("." attribute_name | "[" element_index "]")*
我认为括号表示arg_name可以是
dottribute
或索引表达式,
[2]
,因此形式
'10'
的任意字典键限制适用-如果这是正确的,文档可能更清晰

>>> d
{'1': 123, 'a': 4}
使用
''{['1']}'
作为格式字符串,返回一个双引号字符串,该字符串不起作用

>>> '''{['1']}'''.format(d)
Traceback (most recent call last):
  File "<pyshell#98>", line 1, in <module>
    '''{['1']}'''.format(d)
KeyError: "'1'"

>>> d.__getitem__("'1'")
Traceback (most recent call last):
  File "<pyshell#100>", line 1, in <module>
    d.__getitem__("'1'")
KeyError: "'1'"
.format
无法将类似于
'2'
的字符串传递给
\uu getitem\uuuuuuuuu

>>> '''{[1]}'''.format(d)
Traceback (most recent call last):
  File "<pyshell#101>", line 1, in <module>
    '''{[1]}'''.format(d)
KeyError: 1
>>>

如果字典有一个双引号键,那么它可以工作

>>> d["'1'"] = 'foo'
>>> d
{'1': 123, "'1'": 'foo', 'a': 4}
>>> "{['1']}".format(d)
'foo'
>>>

既然你的问题已经得到了回答,我想指出另一种不用很长口述就可以将字符转换成数字的方法

chars = " abcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()-_"

for char in chars:
    print(char, (chars.index(char)+3)%4 * 90)

老实说,我认为最初的方法可能更好,因为它的作用非常明显,但我只是想表明有一种更简单的方法

既然你的问题已经得到了回答,我想指出另一种不用很长口述就可以将字符转换成数字的方法

chars = " abcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()-_"

for char in chars:
    print(char, (chars.index(char)+3)%4 * 90)

老实说,我认为最初的方法可能更好,因为它的作用非常明显,但我只是想表明有一种更简单的方法

int
2
vs字符串
'2'
?首先尝试打印
数据
数组
,以帮助您调试。。。因为我们不知道里面有什么,所以我们帮不了你。请参阅,您应该发布完整的回溯。a#2(输入),输出0#180 2回溯(最近一次调用):文件“D:************\table.py”,第59行,打印(“{[”+array[i]+“]}”)。format(table))key错误:2看起来您正在尝试构造
[element\u index]
格式规范语言不支持。您不能引用
element\u index
,格式语言会检查
[element\u index]
是否为整数,并在将其用作字符串之前传递该值,不幸的是,您需要将其作为字符串,而这不起作用。如果
array[i]
是说
'*'
它工作得很好。int
2
vs string
'2'
?首先尝试打印
数据
数组
,以帮助您调试。。。因为我们不知道里面有什么,所以我们帮不了你。请参阅,您应该发布完整的回溯。a#2(输入),输出0#180 2回溯(最近一次调用):文件“D:************\table.py”,第59行,打印(“{[”+array[i]+“]}”)。format(table))key错误:2看起来您正在尝试构造
[element\u index]
格式规范语言不支持。您不能引用
element\u index
,格式语言会检查
[element\u index]
是否为整数,并在将其用作字符串之前传递该值,不幸的是,您需要将其作为字符串,而这不起作用。如果说
array[i]
'*'
,它工作正常。这是指规范的另一部分,即
{[]}
,OP在
元素索引
而不是
字段名
方面存在问题。文档没有明确指出
元素索引
的局限性,但确实显示了:
元素索引::=integer | index(字符串
字段名
中不能有
:'
,但
元素名
可以有除
']
以外的任何字符,例如
“{[:]}”.format({':':0})->“0”