如何在Python中将十六进制字符串转换为int?
我可以把它作为" 0xffff
"或只是" ffff
".
我只想将base-2二进制数字串转换为int,如下所示:
>>> '11111111'.fromBinaryToInt()
255
Run Code Online (Sandbox Code Playgroud)
有没有办法在Python中执行此操作?
我需要编写一个函数,它接受一个数字列表并将它们相乘.例子:
[1,2,3,4,5,6]
会给我1*2*3*4*5*6
.我真的可以使用你的帮助.
可能重复:
如何在Python中执行变量变量?
我有一个变量,并为其分配了一个字符串,我想根据该字符串定义一个新变量.
foo = "bar"
foo = "something else"
# What I actually want is:
bar = "something else"
Run Code Online (Sandbox Code Playgroud) 我试图找到一个很好的来源,解释为什么global
在python(以及一般的编程)中使用被认为是不好的做法.有人可以指点我或解释一下吗?
我正在尝试将字典写入txt文件.然后通过键入键来读取dict值raw_input
.我觉得我只是错过了一步,但我一直在寻找一段时间.
我收到这个错误
File "name.py", line 24, in reading
print whip[name]
TypeError: string indices must be integers, not str
Run Code Online (Sandbox Code Playgroud)
我的代码:
#!/usr/bin/env python
from sys import exit
class Person(object):
def __init__(self):
self.name = ""
self.address = ""
self.phone = ""
self.age = ""
self.whip = {}
def writing(self):
self.whip[p.name] = p.age, p.address, p.phone
target = open('deed.txt', 'a')
target.write(str(self.whip))
print self.whip
def reading(self):
self.whip = open('deed.txt', 'r').read()
name = raw_input("> ")
if name in self.whip:
print self.whip[name]
p = Person()
while …
Run Code Online (Sandbox Code Playgroud) 我将数据保存在postgreSQL数据库中.我使用Python2.7查询这些数据并将其转换为Pandas DataFrame.但是,此数据框的最后一列中包含值的字典(或列表?).DataFrame看起来像这样:
[1] df
Station ID Pollutants
8809 {"a": "46", "b": "3", "c": "12"}
8810 {"a": "36", "b": "5", "c": "8"}
8811 {"b": "2", "c": "7"}
8812 {"c": "11"}
8813 {"a": "82", "c": "15"}
Run Code Online (Sandbox Code Playgroud)
我需要将此列拆分为单独的列,以便DataFrame如下所示:
[2] df2
Station ID a b c
8809 46 3 12
8810 36 5 8
8811 NaN 2 7
8812 NaN NaN 11
8813 82 NaN 15
Run Code Online (Sandbox Code Playgroud)
我遇到的主要问题是列表的长度不同.但是所有列表只包含相同的3个值:a,b和c.它们总是以相同的顺序出现(第一个,第二个,第三个).
以下代码用于工作并返回我想要的内容(df2).
[3] df
[4] objs = [df, pandas.DataFrame(df['Pollutant Levels'].tolist()).iloc[:, :3]]
[5] df2 = pandas.concat(objs, axis=1).drop('Pollutant Levels', axis=1) …
Run Code Online (Sandbox Code Playgroud) 我的代码:
import simplejson as json
s = "{'username':'dfdsfdsf'}" #1
#s = '{"username":"dfdsfdsf"}' #2
j = json.loads(s)
Run Code Online (Sandbox Code Playgroud)
#1
定义是错误的
#2
定义是对的
我听说在Python中单个双引号可以互换,有人能为我解释一下吗?
我正在读取True - False
文件中的值,我需要将其转换为布尔值.目前,True
即使将值设置为,它也始终将其转换为False
.
这MWE
是我正在尝试做的事情:
with open('file.dat', mode="r") as f:
for line in f:
reader = line.split()
# Convert to boolean <-- Not working?
flag = bool(reader[0])
if flag:
print 'flag == True'
else:
print 'flag == False'
Run Code Online (Sandbox Code Playgroud)
该file.dat
文件基本上由一个带有值的字符串组成True
或False
写在里面.这种安排看起来非常复杂,因为这是一个来自更大代码的最小例子,这就是我将参数读入其中的方式.
为什么flag
总是转换成True
?