精华内容
下载资源
问答
  • 问题是:给定类似C(Mg2(OH)4)2的公式,返回包含元素及其计数的哈希表.元素名称始终以大写字母开头,并且... 标签:data-structures,stack,hash,python,algorithm 来源: https://codeday.me/bug/20191025/1927824.html

    问题是:给定类似C(Mg2(OH)4)2的公式,返回包含元素及其计数的哈希表.元素名称始终以大写字母开头,并且可以以小写字母开头.

    我认为我首先要解决最简单的情况:没有括号.

    def bracket_hash(formula):

    element = ""

    atom_count = 0

    element_hash = {}

    for x in formula:

    if x.isupper():

    if element!="":

    element_hash[element] = 1

    element = ""

    element = x

    elif x.islower():

    element += x

    else:

    element_count = int(x)

    element_hash[element] = element_count

    element_count = 0

    element = ""

    if element!="":

    element_hash[element] = 1

    return element_hash

    此代码在以下情况下可以正常工作:

    print(bracket_hash("H2O"))

    print(bracket_hash("CO2"))

    print(bracket_hash("Mg2O4"))

    print(bracket_hash("OH"))

    现在我认为必须以某种方式使用堆栈来处理OH(Ag3(OH)2)4等多括号的情况,这里Ag的计数必须为3 * 4,O和H的计数必须为2 * 4 1.

    到目前为止,我开始是这样的:

    def formula_hash(formula):

    stack = []

    final_hash = {}

    cur = ""

    i = 0

    while i < len(formula):

    if formula[i] == '(':

    j = i

    while formula[j]!=')':

    j = j + 1

    cur = formula[i:j]

    stack.append(bracket_hash(cur))

    cur = ""

    i = j + 1

    但是现在我被困住了.

    随着编码问题变得越来越长,并且涉及到混合数据结构来解决,我有点陷入困境.在这里,他们使用哈希表和堆栈.

    所以我的问题是:如何将这个问题分解为可管理的部分并加以解决.如果确实要解决此问题,则必须将其映射到可管理的代码段.任何帮助将不胜感激.

    谢谢.

    解决方法:

    我认为您可以使用递归来解决此问题.这是您的函数应如何工作:

    >就像您在第一个代码中一样,直到遇到左括号.

    >遇到左括号,请找到相应的右括号.这可以通过一个计数器来完成:将其初始化为1,然后在遇到新的右括号时,将计数器递增,而在遇到右括号时,将其递减.当计数器等于0时,您已找到匹配的右括号.

    >在括号之间剪切字符串,并使用该字符串调用相同的函数(这是递归方面).

    >将返回的字典中的值添加到当前字典中,然后乘以括号后面的数字.

    如果您在实施此解决方案的某些部分时遇到问题,请告诉我,我将提供更多详细信息.

    编辑:关于堆栈方法

    堆栈方法只是模拟递归.它具有一堆计数器,而不是再次调用该函数并具有本地计数器.当打开括号时,它会在此上下文中计数;当关闭括号时,它将与包含它的上下文合并,并具有相应的多重性.

    到目前为止,我更喜欢递归方法,这种方法更自然.

    标签:data-structures,stack,hash,python,algorithm

    来源: https://codeday.me/bug/20191025/1927824.html

    展开全文
  • 分钟前言前面一篇文章《python 数据库骚操作 -- mongodb》介绍了 mongodb 的库,我把 mysql 放在了最后面,这篇文章继续介绍 redis 的操作。 redis支持五种数据类型:string(字符串),hash(哈希),list(列表)...

    o55g08d9dv.jpg广告关闭

    腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元!

    分钟前言前面一篇文章《python 数据库骚操作 -- mongodb》介绍了 mongodb 的库,我把 mysql 放在了最后面,这篇文章继续介绍 redis 的操作。 redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。 接下来会简单介绍一下,python 与 redis 的化学反应...

    y9wrxid1cr.gif

    astropy - a community python library for astronomy.一个面向天文学的python社区库 ? bcbio-nextgen - a toolkit providing best-practice pipelines for fullyautomated high throughput sequencing analysis.一个为全自动高通量测序分析提供最佳实践管道的工具 ? bcbb - - collection of useful code related to ...

    awesome-python 是 vinta 发起维护的 python 资源列表,内容包括:web框架、网络爬虫、网络内容提取、模板引擎、数据库、数据可视化、图片处理、文本处理、自然语言处理、机器学习、日志、代码分析等。 awesomepython环境管理包管理包仓库分发构建工具交互式解析器文件日期和时间文本处理特殊文本格式处理自然语言...

    bk1ogfl34j.jpeg

    首先介绍本教程所需的所有函数和对象(所需的python库)。 import numpyimport pandasfrom keras.models import sequentialfrom keras.layersimport dense...输入属性包括犯罪率,非零售商业面积,化学污染浓度等等。 这是机器学习研究中一个很好的问题。 因为所有的输入和输出属性都是量化的,并且有多达506个...

    元素周期表元素周期表,这个实现好牛逼啊,距离初三刚开始学化学已经很遥远了,想当年我还是化学课代表呢! 由于基本用不到化学了,这里就不实现了。 ? 真实状态pyechartspyecharts 也是一个比较常用的数据可视化库,用得也是比较多的了,是百度 echarts 库的 python 支持。 这里也展示一下常用的图表。 文档地址为...

    qoaejc9tw5.jpeg

    在本例中,将新行初始化为python字典,并使用append()方法将该行追加到dataframe。 在向append()添加python字典类型时,请确保传递ignore_index=true...化学分数按降序排列 descending = df.sort_values(chemistry,ascending=false)? 更复杂一点的,我们希望按物理分数的升序排序,然后按化学分数的降序排序...

    0ktd832pam.jpeg

    python性能优化除了改进算法,选用合适的数据结构之外,还可以将关键python代码部分重写成c扩展模块,或者选用在性能上更为优化的解释器等。 强大的库python最棒的地方之一,就是大量的第三方库,覆盖之广,令人惊叹。 python 库有一个缺陷就是默认会进行全局安装。 为了使每个项目都有一个独立的环境,需要使用工具...

    可以看到将d、b、a都注释掉以后,结果是c在python3中,无论是经典类还是新式类,结果都广度查找; 在python2中经典类是深度查找,新式类是广度查找...举个典型的面向过程的例子, 数据库备份, 分三步,连接数据库,备份数据库,测试备份文件可用性。 代码如下:def db_conn(): print(connecting db...) ...

    那实例化时,会产生什么化学反应呢?? 根据上图我们得知,其实self,就是实例本身! 你实例化时python会自动把这个实例本身通过self参数传进去。 你说好吧...举个典型的面向过程的例子, 数据库备份, 分三步,连接数据库,备份数据库,测试备份文件可用性。 代码如下defdb_conn():print(connectingdb...)defdb...

    klvmeov9yp.png

    简单介绍行业常说的“数据分析三剑客”或者“机器学习三剑客”,指的就是 numpy(计算), matplotlib(可视化), pandas(分析) 这三个 python 库。 如果拿自然科学学科类比,matplotlib 相当于“物理学”,pandas 相当于“化学”,而 numpy 就是“数学”, 是其他学科赖以立足的“基石”。 numpy 之所以是基石,是因为 ...

    bz2z5pxmih.jpeg

    元素周期表元素周期表,这个实现好牛逼啊,距离初三刚开始学化学已经很遥远了,想当年我还是化学课代表呢! 由于基本用不到化学了,这里就不实现了。 ?元素周期表? 真实状态pyechartspyecharts 也是一个比较常用的数据可视化库,用得也是比较多的了,是百度 echarts 库的 python 支持。 这里也展示一下常用的图表...

    q8fx06waje.jpeg

    元素周期表元素周期表,这个实现好牛逼啊,距离初三刚开始学化学已经很遥远了,想当年我还是化学课代表呢! 由于基本用不到化学了,这里就不实现了。 元素周期表真实状态pyechartspyecharts 也是一个比较常用的数据可视化库,用得也是比较多的了,是百度 echarts 库的 python 支持。 这里也展示一下常用的图表...

    我们知道,生物学家在写python,化学家在写python,计算机科学家在写python,老师也在写python。 甚至,测试的小姐姐也开始写python。 我们终于意识到...所以,python适合入门。? 应该怎么学? python有许多方向,许多领域的包库,可供学习。 每一个专业的包,库,学习时间都不会是24小时,48小时。 需要大量...

    rdkit – 化学信息学和机器学习软件。 scipy – 由一些基于 python ,用于数学,科学和工程的开源软件构成的生态系统。 statsmodels – 统计建模和计量经济学。 sympy – 一个用于符号数学的 python 库。 zipline – 一个 python 算法交易库。 数据可视化进行数据可视化的库。 参见: awesome-javascript。 matplotlib...

    rg6yyjhuu4.jpeg

    astropy – 一个天文学 python 库。 bcbio-nextgen – 这个工具箱为全自动高通量测序分析提供符合最佳实践的处理流程。 bccb – 生物分析相关代码集合biopython – biopython是一组可以免费使用的用来进行生物计算的工具。 blaze – numpy 和 pandas 的大数据接口。 cclib – 一个用来解析和解释计算化学软件包输出...

    zroq27dzo3.png

    基于这些特性,numpy 为张量计算提供了标准的 api,成为 python 中不同数组技术之间的核心协调机制。 接下来,我们来看这篇 numpy 综述论文的详细内容。 论文摘要数组编程为访问、操纵和计算向量、矩阵和高维数组中的数据提供了功能强大、紧凑且表达力强的语法。 numpy 是 python 语言的主要数组编程库,它在物理...

    比如要定义一个变量 a,让 a 的值为 1,用 c 语言来写分为两步,第一步是“int a”,第二步是“a = 1”,另外c语言还需要导入头文件“#include”和定义主函数 main。 而 python 只需要一步“a = 1”。 其次,python 拥有大量的模块、库和包,让开发者拿来即用,提高开发效率。 3.矛盾的同一性“事情不是矛盾双方互相...

    9fgfpk5bkz.jpeg

    文本列表python的实现用到了gensim库,其中的bm25实现的源码如下:#! usrbinenv python# -*- coding:utf-8 -*-## licensed under the gnu lgpl v2.1 - ...事实上,降压药物的化学机构和作用机制不一样。 每一种降压药,其降压机理和适应人群都不一样。 只要适合自己的病情和身体状况,就是好药。 因此,不存在...

    cli命令行界面下,使用select命令切换库。 python中可以在建立连接的时候声明连接哪个库。 删除数据和db的操作:import redispool1 = redis.connection...小明物理考了90分r.zadd(chemistry, xiaoming, 66) # 小明化学考了66分r.zinterstore(score, , max) # 分数只取2门里高的那门,maxprint(r.zrange(score, ...

    72kxeo00ni.png

    是的,我们可以使用squiggle python库将这些dna序列可视化,进行操作并运行:squiggle example.fa --method=gates? dna序列被转换为2d图像,其中t,a,c和...这四种化学物质通过氢键以任何可能的顺序连接在一起,形成一条链,这形成了dna双螺旋的一条线。 双螺旋的第二条线平衡了第一根。 因此,如果第一条线上有a...

    展开全文
  • 反正小编我是已经记不太清了,所以今天的文章除了分享如何用python配平化学方程式,顺带着还会复习一些化学方程式的知识,希望广大化学爱好者喜欢。1.化学方程式复习篇1)定义化学方程式是指用化学式表示化学反应的式...

    不知不觉已经毕业多年了,不知道大家是否还记得怎么配平化学方程式呢?反正小编我是已经记不太清了,所以今天的文章除了分享如何用python配平化学方程式,顺带着还会复习

    一些化学方程式的知识,希望广大化学爱好者喜欢。

    1.化学方程式复习篇

    1)定义

    化学方程式是指用化学式表示化学反应的式子,它不仅表明了反应物、生成物和反应条件;同时,化学计量数代表了各反应物、生成物物质的量关系,通过相对分子质量或相对原子

    质量还可以表示各物质之间的质量关系,对于气体反应物、生成物,还可以直接通过化学计量数得出体积比。

    2)配平方法

    a.最小公倍数法

    操作步骤:

    A.找出原子个数较多,且在反应式两边各出现一次的原子,求它的最小公倍数;

    B.推出各分子的系数;

    例如:

    4P+5O2=2P2O5

    第一步:P+O2—P2O5

    第二步:P+5O2—2P2O5

    第三步:4P+5O2—2P2O5

    b.观察法

    从化学式生成物中较复杂的一种推算出有关各反应物化学式的化学计量数和该生成物的化学计量数;根据求得的化学式的化学计量数,再找出其他化学式的化学计量数,直至配平。

    例如:

    4H2O(g)+3Fe=Fe3O4+4H2

    第一步 H2O(g)+Fe---Fe3O4+H2

    第二步 4H2O(g)+3Fe---Fe3O4+H2

    第三步 4H2O(g)+3Fe=Fe3O4+4H2(反应条件:加热)

    c.奇偶配平法

    看哪种元素在反应化学方程式左右两边出现次数最多;从该元素个数为奇数的化学式入手,将其配成偶数;由它求得的化学计量数配平其他化学式的化学计量数,使两边原子个数相等。

    例如:

    H2O(g)+Fe---Fe3O4+H2

    第一步:配平氧原子

    4H2O(g)+Fe---Fe3O4+H2

    第二步:配平氢原子、铁原子

    4H2O(g)+3Fe---Fe3O4+4H2

    第三步:配平后的化学方程式:

    4H2O(g)+3Fe=Fe3O4+4H2(反应条件:加热)

    d.氧化还原法

    对于氧化还原反应,先观察得出氧化剂失氧的数目,再观察得出还原剂得氧的数目,然后配平

    例如:

    3CO+Fe2O3=2Fe+3CO2

    氧化剂为氧化铁反应前后失掉三个氧,还原剂为一氧化碳反应前后得到一个氧,所以需要三个一氧化碳才能夺去氧化铁中的氧,一氧化碳、二氧化碳配3,铁配2

    e.解方程法

    设化学方程式中个分子系数为xyz等未知数,然后根据质量守恒条件得出关系式解方程

    例如:

    C2H5OH + 3O2 ——2CO2 + 3H2O

    设:xC2H5OH + yO2 ——zCO2 + tH2O

    则有:

    2x=z;6x=2t;x+2y=2z+t;x+2y=2×(2x)+3x;

    2y=4x+3x-x;2y=6x;y=3x

    解出:x=1;y=3;z=2;t=3

    2.如何用python配平化学方程式

    1)安装第三方库—bce

    安装方法:

    a.使用pip直接安装

    如下图:

    1346788-20190720114946494-1519618707.png

    b.源码安装

    操作步骤:

    git https://github.com/bce-toolkit/bce

    cd D:\GitDemo\bce(源码下载保存的路径)

    python3 install setup.py

    2)如何使用

    打开DOS窗口

    输入bce-console进入操作界面

    输入想要配平的方程式

    如下:

    1346788-20190720115019988-964933612.png

    ---------------------

    作者:亚图姆

    来源:CSDN

    原文:https://blog.csdn.net/weixin_39810558/article/details/96569171

    版权声明:本文为博主原创文章,转载请附上博文链接!

    展开全文
  • 不知不觉已经毕业多年了,不...1.化学方程式复习篇Python资源共享群:4840318001)定义化学方程式是指用化学式表示化学反应的式子,它不仅表明了反应物、生成物和反应条件;同时,化学计量数代表了各反应物、生成物物...

    不知不觉已经毕业多年了,不知道大家是否还记得怎么配平化学方程式呢?反正小编我是已经记不太清了,所以今天的文章除了分享如何用python配平化学方程式,顺带着还会复习

    一些化学方程式的知识,希望广大化学爱好者喜欢。

    1.化学方程式复习篇

    Python资源共享群:484031800

    1)定义

    化学方程式是指用化学式表示化学反应的式子,它不仅表明了反应物、生成物和反应条件;同时,化学计量数代表了各反应物、生成物物质的量关系,通过相对分子质量或相对原子

    质量还可以表示各物质之间的质量关系,对于气体反应物、生成物,还可以直接通过化学计量数得出体积比。

    2)配平方法

    a.最小公倍数法

    操作步骤:

    A.找出原子个数较多,且在反应式两边各出现一次的原子,求它的最小公倍数;

    B.推出各分子的系数;

    例如:

    4P+5O2=2P2O5

    第一步:P+O2—P2O5

    第二步:P+5O2—2P2O5

    第三步:4P+5O2—2P2O5

    b.观察法

    从化学式生成物中较复杂的一种推算出有关各反应物化学式的化学计量数和该生成物的化学计量数;根据求得的化学式的化学计量数,再找出其他化学式的化学计量数,直至配平。

    例如:

    4H2O(g)+3Fe=Fe3O4+4H2

    第一步 H2O(g)+Fe---Fe3O4+H2

    第二步 4H2O(g)+3Fe---Fe3O4+H2

    第三步 4H2O(g)+3Fe=Fe3O4+4H2(反应条件:加热)

    c.奇偶配平法

    看哪种元素在反应化学方程式左右两边出现次数最多;从该元素个数为奇数的化学式入手,将其配成偶数;由它求得的化学计量数配平其他化学式的化学计量数,使两边原子个数相等。

    例如:

    H2O(g)+Fe---Fe3O4+H2

    第一步:配平氧原子

    4H2O(g)+Fe---Fe3O4+H2

    第二步:配平氢原子、铁原子

    4H2O(g)+3Fe---Fe3O4+4H2

    第三步:配平后的化学方程式:

    4H2O(g)+3Fe=Fe3O4+4H2(反应条件:加热)

    d.氧化还原法

    对于氧化还原反应,先观察得出氧化剂失氧的数目,再观察得出还原剂得氧的数目,然后配平

    例如:

    3CO+Fe2O3=2Fe+3CO2

    氧化剂为氧化铁反应前后失掉三个氧,还原剂为一氧化碳反应前后得到一个氧,所以需要三个一氧化碳才能夺去氧化铁中的氧,一氧化碳、二氧化碳配3,铁配2

    e.解方程法

    设化学方程式中个分子系数为xyz等未知数,然后根据质量守恒条件得出关系式解方程

    例如:

    C2H5OH + 3O2 ——2CO2 + 3H2O

    设:xC2H5OH + yO2 ——zCO2 + tH2O

    则有:

    2x=z;6x=2t;x+2y=2z+t;x+2y=2×(2x)+3x;

    2y=4x+3x-x;2y=6x;y=3x

    解出:x=1;y=3;z=2;t=3

    2.如何用python配平化学方程式

    1)安装第三方库—bce

    安装方法:

    a.使用pip直接安装

    如下图:

    b.源码安装

    操作步骤:

    cd D:\GitDemo\bce(源码下载保存的路径)

    python3 install setup.py

    2)如何使用

    打开DOS窗口

    输入bce-console进入操作界面

    输入想要配平的方程式

    如下:

    展开全文
  • python在化学方面的应用-python化学

    千次阅读 2020-11-01 13:18:30
    分钟前言前面一篇文章《python 数据库骚操作 -- mongodb》介绍了 mongodb 的库,我把 mysql 放在了最后面,这篇文章继续介绍 redis 的操作。 redis支持五种数据类型:string(字符串),hash(哈希),list(列表)...
  • 创建独立的Python化学信息学环境

    千次阅读 2018-05-23 14:49:56
    一、安装AnacondaWin或者Linux...二、创建Python3.x虚拟环境conda create -n pydd36 python=3.6 conda三、测试环境#激活虚拟环境source activate pydd36#使用openbabel和RDKitimport openbabel, pybel from rdkit...
  • /usr/bin/python # -*- coding: UTF-8 -*- class Chemical: empCount = 0 def __init__(self, chemical_name, molecule_weight, bulk_state, density): self.chemical_name = chemical_name self.molecule_...
  • bond1 = mol.GetBondBetweenAtoms(0,1) bond2 = mol.GetBondBetweenAtoms(0,2) print(bond1) # <rdkit.Chem.rdchem.Bond object at 0x000000000084D850> print(bond2) # None
  • 我正在尝试解决此问题:https://leetcode.com/articles/number-of-atoms/#approach-1-recursion-accepted.问题是:给定类似C(Mg2(OH)4)2的公式,返回包含元素及其计数的哈希表.元素名称始终以大写字母开头,并且可以以...
  • 反正小编我是已经记不太清了,所以今天的文章除了分享如何用python配平化学方程式,顺带着还会复习一些化学方程式的知识,希望广大化学爱好者喜欢。1.化学方程式复习篇1)定义化学方程式是指用化学式表示化学反应的式...
  • python之蟒开启理论计算化学的新时代(2012-08-19 22:09:50)标签:杂谈python之蟒开启理论计算化学的新时代就像iphone和android开创了手机的新时代,python也将开启理论化学的新时代。首先谈一下个人的理论化学经历。...
  • 问题是:给定类似C(Mg2(OH)4)2的公式,返回包含元素及其计数的哈希表.元素名称始终以大写字母开头,并且... 标签:data-structures,stack,hash,python,algorithm 来源: https://codeday.me/bug/20191025/1927824.html
  • 问题是:给定类似C(Mg2(OH)4)2的公式,返回包含元素及其计数的哈希表.元素名称始终以大写字母开头,并且... 标签:data-structures,stack,hash,python,algorithm 来源: https://codeday.me/bug/20191025/1927824.html
  • DFT的matlab源代码很棒的Python化学 与化学相关的精选Python框架,库,软件和资源的精选清单。 受启发。 目录 普通化学 通用化学包装和工具。 -基于wxPython的GUI应用程序,用于通过其组分的摩尔比计算出特定组成的...
  • python表示化学结构式

    千次阅读 2019-10-20 16:14:52
    地址:https://github.com/flatkinson/standardiser 面对化学分子,我们使用Python模块标准化程序将所有化学结构标准化为通用表示方案,以方便进一步进行预处理。 ...
  • 基于 Python化学模拟框架 (PySCF) 是由 Python 提供支持的电子结构模块的开源集合。该软件包为量子化学计算和方法开发提供了一个简单、轻量且高效的平台。PySCF 可用于使用平均场和后平均场方法模拟分子、晶体和...
  • 生物化学家的Python数据和脚本 该研讨会使用与生物化学有关的示例介绍python编程语言 用法 建立书 如果您想开发和构建《面向生物化学家的Python数据和脚本》一书,则应该: 克隆此存储库并运行 运行pip install -r ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 9,989
精华内容 3,995
关键字:

python化学

python 订阅