我的同样的代码在pycharm 运行选中代码上运行 为什么不出结果呢 运行后是这样的

Pycharm中运行Python代码的几种方式
时间: 13:51:30
&&&& 阅读:632
&&&& 评论:
&&&& 收藏:0
标签:&&&&&&&&&&&&&&&&&&&&&&&&&&&& & 在pycharm中的Python代码运行会出现各种奇葩的问题,比如,密码输入时不显示或没有提示,给我们带来一些麻烦,下面介绍几种代码运行的几种方式:
& &一、直接运行(Run按钮或者快捷键shift+F10)
& & 1.进入pychram主界面,输入代码后,直接Run就可以;
& 2.Termnal下运行.py文件
& &在pycharm的主界面,点termnal,进入命令面板,选择路径,回车键执行相应的文件(python 文件名.py)。
3.终端命令行
& &1&进入pycharm主界面,选中要执行的文件或目录;
& &2&右键,选择show in explore,弹出本地对话框;
& &3&在地址栏输入cmd,直接进入当前目录;
& &4&在命令行输入Python 文件名.py,文件被执行,并显示运行结果。
注:选单个文件,只执行单个文件;选一个目录,会执行这个目录下所有的py文件
&标签:&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&国之画&&&& &&&&chrome插件
版权所有 京ICP备号-2
迷上了代码!2443人阅读
Selenium(34)
更多关于python selenium的文章,请关注我的专栏:
为什么用PyCharm或者Eclipse执行测试成功但无法生成HTMLTestRunner报告
最近遇到一些人问这样的问题:
他们的代码写的没问题,执行也成功了,但就是无法生成HTMLTestRunner的报告,截图如下:
其实这是编辑器搞得鬼,编辑器为了方便用户执行测试,都有一项功能,可以用编辑器来调用unittest或者nose来执行测试用例,这种情况下,执行的只是用例或者套件,而不是整个文件,写在main里的代码是不会被执行的!!自然无法生成测试报告。
可以看看下面两张图:
会发现,在py文件不同的地方点击右键,出来的菜单是不一样的!
第一幅图中的菜单是选中用例或套件时编辑器加载的右键菜单,这个是只有编辑器识别出文件中的用例时才会出现的;
第二幅图中的菜单是正常情况下编辑器的右键菜单,这种情况下编辑器是执行这个文件,文件中所有的代码都会被执行到。
一般情况下在用例的部分点击右键会出来图一菜单,在其他部分如main里点击右键会出来图二,不过也不一定,自己点点看吧。
现在很清晰了,我们在如果想要生成测试报告,那么一定要注意右键执行时选择的右键菜单,一定要当做文件执行,不要让编辑器当做用例执行。
同时附上我修改过的HTMLTestRunner,修改了样式,支持了中文,更友好一些。
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:222980次
积分:2851
积分:2851
排名:第12176名
原创:77篇
评论:108条
现承接web自动化私活,有意可加本人QQ:
Py+Se:&&
阅读:4642
文章:20篇
阅读:12039
文章:38篇
阅读:187751
(1)(6)(2)(1)(10)(9)(19)(3)(21)(5)(1)(4)pycharm,run unittests后为什么__main__:后的代码没执行?_词汇网
pycharm,run unittests后为什么__main__:后的代码没执行?
责任编辑:词汇网 发表时间: 2:51:27
Pycharm 里右键run unittests,testcase是跑了,但是发现实际if __name__=="__main__": 后的代码并没有跑(如__name__=="__main__":print "abs",并没有打印出abs),怎么样才能运行__main__后面的代码?下面是我的代码,action.py,search是另一个自己写的module,其中有3个testcase,__mian__之后我创建了个testsuit,总共应该有四个testcase,但是run unittest之后,只运行了action里的一个testcase:action.py:from selenium import webdriverimport unittestimport timefrom selenium.webdriver.support.ui import WebDriverWaitfrom selenium.webdriver.support import expected_conditions as ECfrom mon.by import Byfrom mon.action_chains import ActionChainsfrom mon.keys import Keysimport searcheclass ActionTest(unittest.TestCase):def setUp(self):self.driver=webdriver.Ie()
baseurl="/jeresig/jquery.hotkeys/master/test-static-05.html"
self.driver.get(baseurl)self.driver.maximize_window()def test_action(self):self.driver.implicitly_wait(30)
element1=WebDriverWait(self.driver,10,0.5).until(EC.visibility_of_element_located((By.ID,"_Shift_d")))
ActionChains(self.driver).key_up(Keys.SHIFT).send_keys("d").key_up(Keys.SHIFT).perform()
time.sleep(3)print str(element1.location)print str(element1.value_of_css_property("_Shift_d"))def tearDown(self):self.driver.close()if __name__=="__main__":print __name__
su=unittest.TestSuite()print "gh"
su.addTest(unittest.makeSuite(ActionTest))
su.addTest(unittest.TestLoader().loadTestsFromModule(searche))
unittest.TextTestRunner().run(su)Pycharm 里右键run unittests,testcase是跑了,但是发现实际if __name__=="__main__": 后的代码并没有跑(如__name__=="__main__":print "abs",并没有打印出abs),怎么样才能运行__main__后面的代码?下面是我的代码,action.py,search是另一个自己写的module,其中有3个testcase,__mian__之后我创建了个testsuit,总共应该有四个testcase,但是run unittest之后,只运行了action里的一个testcase:action.py:from selenium import webdriverimport unittestimport timefrom selenium.webdriver.support.ui import WebDriverWaitfrom selenium.webdriver.support import expected_conditions as ECfrom mon.by import Byfrom mon.action_chains import ActionChainsfrom mon.keys import Keysimport searcheclass ActionTest(unittest.TestCase):def setUp(self):self.driver=webdriver.Ie() baseurl="/jeresig/jquery.hotkeys/master/test-static-05.html" self.driver.get(baseurl)self.driver.maximize_window()def test_action(self):self.driver.implicitly_wait(30) element1=WebDriverWait(self.driver,10,0.5).until(EC.visibility_of_element_located((By.ID,"_Shift_d"))) ActionChains(self.driver).key_up(Keys.SHIFT).send_keys("d").key_up(Keys.SHIFT).perform() time.sleep(3)print str(element1.location)print str(element1.value_of_css_property("_Shift_d"))def tearDown(self):self.driver.close()if __name__=="__main__":print __name__ su=unittest.TestSuite()print "gh" su.addTest(unittest.makeSuite(ActionTest)) su.addTest(unittest.TestLoader().loadTestsFromModule(searche)) unittest.TextTestRunner().run(su)…显示全部【以下解答】谢邀。为了实现一些乱七八糟的功能(比如实时显示测试进度什么的?),PyCharm有一个unittest的helper脚本,如截图所示。在运行的时候,这个helper脚本去调用你的测试代码(并随时向PyCharm汇报测试进度),因此对于你的测试代码,__name__!="__main__",里面的东西就不执行了。在运行的时候,这个helper脚本去调用你的测试代码(并随时向PyCharm汇报测试进度),因此对于你的测试代码,__name__!="__main__",里面的东西就不执行了。那到底如何测试这个testsuite呢?StackOverflow上也有人问了(unit testing),答案是:没有办法,PyCharm目前还不支持。因此,如果你非要用testsuite不可,为这个脚本添加一个Run Configuration,然后像别的代码一样跑,只不过这样PyCharm提供的优美的进度条就没了 #=_=【以下解答】__name__ = "__main__"【以下解答】Pycharm 里右键run unittests,testcase是跑了,但是发现实际if __name__=="__main__": 后的代码并没有跑(如__name__=="__main__":print "abs",并没有打印出abs),怎么样才能运行__main__后面的代码?--》你可能要在命令行下执行test的脚本,试试看python action.py你贴代码的时候,用
来插入,指定代码的类型:python3,这样代码在网页上的格式会规整,大家看起来方便些。【以下解答】因为不是直接调用这个文件的, 所以main不会被执行
上一集:没有了 下一集:
相关文章:&&&&&&&&&&&&
最新添加资讯
24小时热门资讯
附近好友搜索Python IDE:PyCharm中的那些实用功能 - Python - 伯乐在线
& Python IDE:PyCharm中的那些实用功能
到目前为止,我用Eclipse已经有一些年头了,大部分的时间都是用来写Python(安装插件)以及C++(安装插件)。
最近我从一个好友那听说了PyCharm以及它新的免费社区版。我这个朋友用Eclipse也很长时间了,对PyCharm也是赞不绝口,所以我决定至少在家办公的时候试着用用PyCharm。目前为止,我已经深深的喜欢上了它,甚至于在日常工作时也用PyCharm(社区版采用Apache2授权)。
以下我将会介绍一些在我在使用PyCharm时感到惊奇的一些事情。
我无意批评Eclipse或者PyDev,我用了它们很多年,它们很棒!请记住,这是我的个人经验,你的或许有所不同。
PyCharm 对一个文件里你做的改动保持实时的跟踪,通过在编辑器的左侧栏显示一个蓝色的标记。
这一点非常方便,我之前一直是在Eclipse里面用命令“Compare against HEAD” 来比较一个文件前后的改动。
在PyCharm中,你可以对你的改动一览无余。同时,点击那个标记,会显示出之前的内容以及一个工具栏:
你可以很容易地回滚这些改动,在一个详尽的对话框中查看这些改动或是将之前的文本粘贴到剪切板上。
提交时的比较预览
在Eclipse 中,当你提交改动时,会有一个提交对话框向你展示将要被提交的文件列表。
你可以双击其中任意一项来查看改动的对比:这时候,如果你看到代码里一些想修改的地方(比如一个拼错的单词,一段
遗漏的文档,等等),那可就不爽了:你必须关闭所有的东西(包括带有你精心写好的提交注释的提交框),去找到那处惹人烦的代码,改正,然后从头再来一遍。
PyCharm 有同样的特性,但是你的改动是可编辑的。我简直不能再去强调可以当场修正那些错误有多么棒啦!
在提交过程中,我可以很容易地修复像上面那些类似的拼写错误。
一个额外好处是,无论你因为何种原因关闭了提交对话框,当再次尝试提交时,它会保留你刚才填写的那些提交注释。
提交时检查
在提交过程中,我们还可以在实际提交前执行其他一些选项,像“优化导入(排序并移除未使用过的导入)“,检查变动集合中的待完成项等等。
一个有意思的地方是”执行代码分析“那一项。。。
你可以让PyCharm在一个文件,目录或整个项目里执行“代码审查”操作。它会在无需实际执行程序的情况下,
找出存在问题以及相应的改进办法,比如类型检查,可静态的方法,违反代码规范等等问题。
正如在上一节中解释过的,这也可以在提交时在发生改动的文件中自动完成。这是一个文件一次审查之后的结果:
对于其中一些审查结果来说,你还可以应用一个修复建议。例如,对于“Function call can be replaced with set literal()”这一建议,我们可以选择相应的选项来修复。
PyCharm 会将这句:
extensions = set(['.avi', '.mp4', '.mpg', '.mkv'])
extensions = set(['.avi', '.mp4', '.mpg', '.mkv'])
自动替换为:
extensions = {'.avi', '.mp4', '.mpg', '.mkv'}
extensions = {'.avi', '.mp4', '.mpg', '.mkv'}
你可以关闭任何你不希望的审查,包括在项目一级。
我一直在试图重命名一个模块,可在菜单项里一直找不到那一项。。。F2也无济于事。
突然我注意到文件子菜单下面的”重构/重命名“一项,就想。。。会是它吗?果然就是!
在你重命名一个模块时,PyCharm会询问你是否需要自动修改所有与之关联的项目。有福了!
还有很多其他的重构项目,但目前为止我还没有机会一一尝试。
关于过时代码的提示以及改进建议
PyCharm可以告诉你代码里面过时的结构块,并且提出一些改进建议。比如,我有像下面一段这样的代码:
with nested(open(filename1), open(filename2)) as (f1, f2):
with nested(open(filename1), open(filename2)) as (f1, f2): &代码块&
PyCharm会明显的标注出nested:
我用的是Python2.7,事实上你可以使用嵌套上下文管理器,但是,唉,我还得支持python的一些老版本,就保留了nested。
但PyCharm提醒了我,这个事情本身还是很酷的。
任务+特性 分支
如同Eclipse一样(需要Mylin支持),PyCharm也支持基于任务的工作流(包括任务感知的上下文)。
然而PyCharm本身自带了很多直接可用的连接器(GitHub,Mantis,Jira,Bugzilla,等等)。
而且,当你开启一项任务时,它会询问你是否想要创建那个任务的一个特性分支,分支的名字可以配置。
这就避免了必须手动创建一个新的分支,而这个操作确实挺繁琐的(拿到任务的ID,选择名称,等等)。
这个是加分项。
我观察到PyCharm在执行代码的自动完成时扫瞄代码的速度要远快于Eclipse,而且还不打断你当前的工作。
当你想保存一个文件时,Eclipse会阻止你这么做因为它正在后台执行一个任务,这有多惹人烦。。。
快速查看文档
当你把光标挪到一个函数、方法,类或者别的什么上的时候,你会得到一个选项来浏览”快速文档“。看一眼:
正如你看到的,它会用一种赏心悦目的格式展示方法的文档说明,还从代码使用说明中提示了参数的类型。。。即使该函数没有对应的文档说明,你还是会得到像下面这样的一个说明:
Docutils 支持
PyCharm 还包括了对于doctils的一流支持,这让它很容易从集成开发环境中直接再生成文档。
另一方面,它还包括了一个非常好的富文本(译者注:ReST即reStructuredTexteditor)编辑器(比Eclipse的IMHO好用的多):
完善的插件系统
跟据我的使用经验,在Eclipse里面安装插件是件挺痛苦的事情:
很难找到你想要去的地方(提示: 帮助/安装新软件。。。);
你没有一个单一的索引,所以你得去网上去找那些插件源;
系统有时会因为库的依赖问题而崩溃,结果我就没装上那些我想要的插件(工作中还有其他人也同样遇到这个问题,最后不得不放弃);
PyCharm的插件体验则要流畅地多。
首先,它位于一个你认为它有可能会存在的地方:就在”设置”下面的一项:
你可以很容易地浏览插件:
我快速安装了一个标记编辑器(和ReST一样),一个临时存放代码片段的插件,可以让我直接从选择的文本中快速地剪贴,并且预览代码,和SublimeText类似,还用一个漂亮的代码外观。
目前为止就这些了。我会向我的朋友尽力展示一切我认为“看这有多酷”的事情。我使用PyCharm的时间很短,如果我发现还有更多有趣的事情值得再写一篇发表的话,我会继续写。
关于作者:
可能感兴趣的话题
很不错的分享,赞,可以罗列几个不错的插件的名字么?pycharm里面可否看java代码呢,有相关的插件么?
o 239 回复
关于 Python 频道
Python频道分享 Python 开发技术、相关的行业动态。
新浪微博:
推荐微信号
(加好友请注明来意)
– 好的话题、有启发的回复、值得信赖的圈子
– 分享和发现有价值的内容与观点
– 为IT单身男女服务的征婚传播平台
– 优秀的工具资源导航
– 翻译传播优秀的外文文章
– 国内外的精选文章
– UI,网页,交互和用户体验
– 专注iOS技术分享
– 专注Android技术分享
– JavaScript, HTML5, CSS
– 专注Java技术分享
– 专注Python技术分享
& 2017 伯乐在线pycharm 如何程序运行后,仍可查看变量值?(非Debug mode, 因为debug运行太慢) - 知乎93被浏览12075分享邀请回答84 条评论分享收藏感谢收起}

我要回帖

更多关于 pycharm 代码提示 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信