相关疑难解决方法(0)

将许多python变量列表保存到excel表中,同时保持定义变量类型?

使用xlsxwriter可以将变量保存到现有的excel文件并在之后读取它们,尽管问题是变量在excel文件中存储为字符串.

假设我有各种类型的许多不同变量的列表(pd.datetimerange,pd.df,np.arrays等),如果我将它们保存到excel文件中,变量类型将丢失.

Python脚本也是从我的Excel文件中调用的,因此如果不编写VBA脚本,我就无法更改其中的任何内容.哪个会暂时关闭我的工作簿,转储字符(比如说pickle字符串)并重新打开它.

是否可以从excel文件中检索类型而无需先编写解析函数(这将采用excel字符串并使用等效的变量类型产生)?

python parsing vba pandas xlsxwriter

17
推荐指数
1
解决办法
439
查看次数

eval SyntaxError:python中的语法无效

我想分配:

x0='123'    
x1='123'    
x2='123'    
x3='123'    
x4='123'    
x5='123'    
x6='123'    
x7='123'    
x8='123'    
x9='123'    
Run Code Online (Sandbox Code Playgroud)

我编写代码来表示我可以123在输入时获取字符串的输出x1x8.

for i in range(0,10):
    eval("x"+str(i)+"='123'")

Traceback (most recent call last):
File "<stdin>", line 2, in <module>
File "<string>", line 1
  x0='123'
  ^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)

我怎么能这样做?

python

11
推荐指数
2
解决办法
2万
查看次数

如何在Python中使用与对象名称相同的字符串来访问对象本身?

例如,在下面的代码中,我想使用x作为参考获得列表[1,2,3].

In[1]: pasta=[1,2,3]
In:[2]: pasta
Out[2]: [1, 2, 3]
In [3]: x='pas'+'ta'
In [4]: x
Out[4]: 'pasta'
Run Code Online (Sandbox Code Playgroud)

python reference object

10
推荐指数
1
解决办法
338
查看次数

Python json.loads不起作用

我一直在试图弄清楚如何在Python中加载JSON对象.

   def do_POST(self):
    length = int(self.headers['Content-Length'])
    decData = str(self.rfile.read(length))
    print decData, type(decData)
    "{'name' : 'journal2'}" <type 'str'>
    postData = json.loads(decData)
    print postData, type(postData)
    #{'name' : 'journal2'} <type 'unicode'>
    postData = json.loads(postData)
    print postData, type(postData)
    # Error: Expecting property name enclosed in double quotes
Run Code Online (Sandbox Code Playgroud)

我哪里错了?

错误代码(JScript):

var data = "{'name':'journal2'}";
var http_request = new XMLHttpRequest();
http_request.open( "post", url, true );
http_request.setRequestHeader('Content-Type', 'application/json');
http_request.send(data);
Run Code Online (Sandbox Code Playgroud)

True Code(JScript):

var data = '{"name":"journal2"}';
var http_request = new XMLHttpRequest();
http_request.open( "post", url, true );
http_request.setRequestHeader('Content-Type', 'application/json'); …
Run Code Online (Sandbox Code Playgroud)

python json

10
推荐指数
2
解决办法
3万
查看次数

python对象和json对象之间有什么区别?

从表面上看,python本身就使用了json.我能想到的唯一例外是json可以存储js函数.

这是我的问题:我需要通过终端将json传递给python文件.
为什么我应该或不应该只使用eval()?

javascript python django json node.js

9
推荐指数
2
解决办法
1万
查看次数

关于Python中的"eval is evil"和"同意成年人"

我看到许多人说"eval是邪恶的/危险的/不安全的",因为人们可以这样做:

eval("os.system('rm -rf /')")
Run Code Online (Sandbox Code Playgroud)

而在其他帖子中,pythoner被认为是" 同意成人 ",你不必进行类型检查,因为python是鸭子打字的样式.

那么下面的代码呢:

def foo(duck):
    duck.quack()

class EvilDuck(object):
    def quack(self):
        os.system('rm -rf /')

foo(EvilDuck())
Run Code Online (Sandbox Code Playgroud)

你通常如何避免这种情况?pythoner何时同意成年人,何时不同意?

python duck-typing conventions

9
推荐指数
2
解决办法
1483
查看次数

如何从用户输入中获取变量的值?

我正在尝试创建一个基本菜单,检查输入的变量是否与定义的变量匹配.如果定义了变量,则获取已定义变量的数据.

例.

Item1 = "bill"
Item2 = "cows"
item3 = "abcdef"
Choose_Item = input("Select your item: ")
Run Code Online (Sandbox Code Playgroud)
  • 我输入 Item1
  • Choose_Item 应该相等 "bill"

python python-3.x

8
推荐指数
1
解决办法
6万
查看次数

在Python,MATLAB等中使用eval

我知道不应该使用eval.出于所有明显的原因(性能,可维护性等).我的问题更侧重 - 是否有合法用途?应该使用它而不是以另一种方式实现代码.

由于它以多种语言实现并且可能导致糟糕的编程风格,因此我认为它仍然可用.

python matlab eval

8
推荐指数
1
解决办法
2323
查看次数

AttributeError:'int'对象没有属性'isdigit'

numOfYears = 0
cpi = eval(input("Enter the CPI for July 2015: "))
if cpi.isdigit():
    while cpi < (cpi * 2):
        cpi *= 1.025
        numOfYears += 1
    print("Consumer prices will double in " + str(numOfYears) + " years.")
while not cpi.isdigit():
    print("Bad input")
    cpi = input("Enter the CPI for July 2015: ")
Run Code Online (Sandbox Code Playgroud)

我收到以下错误.

AttributeError:'int'对象没有属性'isdigit'

由于我是编程新手,我真的不知道它想告诉我什么.我正在使用它if cpi.isdigit():来检查用户输入的内容是否是有效数字.

python

8
推荐指数
3
解决办法
3万
查看次数

如何将字节类型转换为字典?

我有一个字节类型的对象,像这样:

b"{'one': 1, 'two': 2}"
Run Code Online (Sandbox Code Playgroud)

我需要使用python代码从字典中获取字典。我将其转换为字符串,然后如下转换为字典。

string = dictn.decode("utf-8")
print(type(string))
>> <class 'str'>
d = dict(toks.split(":") for toks in string.split(",") if toks)
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误:

------> d = dict(toks.split(":") for toks in string.split(",") if toks)
TypeError: 'bytes' object is not callable
Run Code Online (Sandbox Code Playgroud)

python string dictionary

8
推荐指数
4
解决办法
1万
查看次数