UTF-8】求python大神回答!

2020-03-20 14:36发布

from turtle import *import osf=open(test.py,w,encoding=utf-8)f.close()speed(0)color(blue)pensize(3)n...

from turtle import *
import os
f=open("test.py","w",encoding="utf-8")
f.close()
speed(0)
color("blue")
pensize(3)
num=50
for i in range(num):
circle(50)
left(360/num)
done()
f=open("test.py","r",encoding="utf-8")
num1=f.read()
f.close()
f=open("test.py","w",encoding="utf-8")
f.write(num1)
os.remove("test02.py")

我用的是pyCharm,为什么文件没有copy到test.py呢?他什么错误都没有弹出来,等我打开test02.py的时候是空白的.求大神回复

3条回答
大牧
2楼 · 2020-05-28 09:16

简单描述一下,你的test.py文件第一步操作的时候在创建文件的同时,关闭了文件。

图片.png

后面的所有代码的操作过程,都没有向文件中写入对应的数据(或者在其他函数中有操作,但是已有代码中没有这样的操作),所以文件test.py中没有数据;另外test02.py在文中的代码中没有体现出来,并且最后删除了test02.py文件,怎么会有打开test02.py的时候是空白的说法呢?

007
3楼 · 2020-09-14 11:49


简单明了的理由当然是开发效率高。但是学习Python的初学者往往会面临以下残酷的现状:


网上充斥着大量的学习资源、书籍、视频教程和博客,但是大部分都是讲解基础知识,不够深入;也有的比较晦涩,难以理解。


如果你真的想要高效地学习Python,那就需要掌握如何过滤网上的垃圾教程资源的技能,并从其他有经验的程序员或在线编程社区中获得帮助。


倘若你没有任何编程知识,或者知之甚少,从一张白纸起步,或许会更容易一些。


在本篇文章中,我们将分享6位技术专家学习Python的最佳方法,也许当你学习举步维艰之时,他们的经验将会帮你躲避很多不必要的坑,以及可以让你学会如何通过Python教程编写出色的Python程序。




QuanNguyen


第一位QuanNguyen,是来自越南的国际学生,在美国印地安那州DePauw大学攻读计算机科学和数学专业学位,同时还攻读哲学专业的学位。他两年前开始使用Java进行编程,后来发现自己需要一种具有更高可读性且能够快速实现原型开发的编程语言,不久之后,Python就成为他最喜欢的语言。 他对数据科学和机器学习领域非常感兴趣,特别是对文本的情感分析。此外,他对人脸和物体识别也具有非常丰富的经验。




最初学习Python时,我使用的主要编程语言还是Java。之所以学习Python,是因为我想要使用一种可读性更高并且能够快速实现原型开发的编程语言(最直接的反映就是编程语言的“print”语句)。


第一阶段学习


从一开始,我自己非常喜欢用Python编写代码,因为Python语法不仅直接、直观,而且具有高度的一致性。一种特定的语法除了适用于特定的数据结构之外,还适用于其他类似的数据结构,比如Python的内置函数len(),它用于返回一个Python列表(https://coolpythoncodes.com/python-list-tutorial)、元组、字符串、集合等多种数据结构的长度,而在Java中则有多种不同的语法,如[variable].length、[variable].length()、length([variable])。


就如何高效地学习Python而言,勤加练习是最好的途径。


在我个人的学习经历中,首先我是通过阅读Codecademy的Python在线指南(https://www.codecademy.com/learn/learn-python)来熟悉Python语法,当然也有其他类似的教程或指南来帮助你学习Python语法。


在第一阶段的学习之后,保持一定的持续性并继续学习Python是至关重要的。


进阶


在此阶段就需要一些中高级的教程或编程书籍,或者解决一些具有挑战性的编程问题。可实践的网站有:


ProjectEuler:https://projecteuler.net


HackerRank:https://www.hackerrank.com


CodeFights:https://codefights.com


dailyprogrammer:https://www.reddit.com/r/dailyprogrammer


虽然教程和书籍从多个角度提供不同的编程教学,让你可以深入了解该语言的特性,但实际的上手编程让大家有了一种更加有趣且更具挑战性的通道来学习不同的编程技巧、数据结构和第三方库,从而解决不同的编程问题。


这两种方法都有各自存在的价值,两者的结合将会让你对编程语言了解得更全面。


再次强调,关键点还是要在于对编程保持持续性,让你的大脑保持住对语言语法的了解,并改善你解决问题的思维过程。


实践


创建自己的项目,或加入开源社区(https://coolpythoncodes.com/julien-danjou)和Github,这些都是编程的必经之路。对于像Python这样的语言来说更是如此,如今开发者社区正以惊人的速度增长,每天都有新的库和项目在快速更新。


通过学习一个新的Python库,你不但可以继续熟悉这门语言,还可以增加你的知识面,为未来解决实际问题打下基础。


在开源项目上与其他人一起工作将有助于对特定主题进行深入研究和了解,同时增加你的专业性和可信度。


DibakarSaha


第二位DibakarSaha,是孟加拉工程技术学院(隶属于MaulanaAbulKalam科技大学)计算机科学与工程专业的一名B.Tech学生。他使用了很多编程语言,如C、C++、Java、Android、VB.NET、VB6、Python、Javascript等。在他的博客(https://evilporthacker.blogspot.hk)中,有很多他参与过的高质量的Python项目。




从我个人经验来讲,学习一门编程语言最好的方法就是挑选一个问题,然后用编程语言来解决它。


想要解决一个问题,你需要非常清楚地了解问题本身。我的意思是你需要了解输入、输出、约束条件、规则和许多其他的东西。


以下是我推荐的一些步骤:


了解Python的基础知识


掌握任何一门编程语言的基础都是非常重要的。你至少首先应该明白如何输入和输出。


同时需要对Python中的列表、元组、集合和字典(https://coolpythoncodes.com/python-dictionary)等不同的数据结构足够熟悉,能够理解循环和列表。


O'Reilly出版的《LearningPython第5版》和Google的Python在线教程(https://developers.google.com/edu/python/introduction?csw=1)可以帮助你对Python基础进行足够的了解。在看书的同时,你还应该跟随你所学的教程进行编程练习。假设你今天学习了输入和输出,那么编写一个程序,以便你可以实现该功能。但是,如果你已经熟悉了这一点,那就不必了。


做项目


当你学习了Python的基础知识之后,就需要做一个真正的项目来实践了。


该项目可以是任何东西。可以是一个简单的GUI计算器项目,也可以是一个可以区分消息是“spam”还是“ham”的复杂AI项目。


在这种情况下,有一个很适合初学者的网站可以帮助你,那就是AutomatetheBoringStuffwithPython(https://automatetheboringstuff.com)。如果你是AI或数据分析领域的初学者,你不妨看看这个(https://pythonprogramming.net)。如果一个项目看起来太难了,那么你可以采用下列解决方案之一:


持续专注于这个问题,直到你能解决所有的子问题。


先把问题放到一边,做一些与原问题有关的简单问题,然后再回来解决原来的问题。


通过谷歌搜索解决方案是可以的,但是要尽量先独立解决问题,自己编写代码,之后在去看别人是如何写的。


借鉴其他高质量代码


假设你是初学者,那么你很可能写的代码缓慢而丑陋。因此你需要阅读别人优秀的代码。可以了解一下GitHub或者其他开源平台的Python项目。


了解Python模块和库


Python有一大堆免费的库和模块可以直接拿来使用,因此你需要了解常用的Python库,比如NumPy、SciPy、Pandas、Matplotlib等。


这些库拥有丰富的功能,你不必自己从头开始编写像贝叶斯类这样的算法。使用库可以让你的代码量更少且易读。


MeenakshiAgarwal


MeenakshiAgarwal是TechBeamers.com网站的联合创始人。她是Lucknow大学计算机科学专业毕业生,拥有计算机应用硕士学位。她曾与大型跨国公司合作,花费数年时间,使用C/C++、VisualC++、Python、Java、J2EE、C#、DotNet、Selenium、FitNesse和其他一些技术进行软件开发,产品设计,测试和自动化。




我是MeenakshiAgarwal,一名计算机科学专业的毕业生,在软件产品开发和测试方面有丰富的经验。由于我对编程和写作充满热情,所以我开始使用Techbeamers(http://www.techbeamers.com),这是一个面向来自世界各地的程序员、测试人员和其他IT专业人员的电子学习平台。


在我的职业生涯中,我学过很多的编程语言。但是Python是我最喜欢的一个。因为我是通过自学掌握Python的。我没有参加任何线上、线下的培训,主要通过在线教程和一些书来学习Python。


在分享我的Python学习方法之前,你首先要清楚学习Python的理由。


Python的以下优点足以说服你学习它:


Python非常简单直接。你几乎可以像伪代码一样读写它。


它有丰富的内置库以及第三方框架和库。


它有一个强大的社区,可以帮助你获得任何与编程有关的答案。


现在让我们看看你如何快速学习Python。


首先是核心语法,简单的数据类型、变量、关键字、条件判断(比如if...else)和控制语句(比如loop)等基本语法块。


掌握基本语法之后,编写一些简单的程序,如阶乘、斐波纳契数列、单数/偶数、计算器等等。


下一步是了解列表、集合、元组、字典等特殊的数据结构。再次使用这些技能来解决一些实际问题,并使用这些数据结构来构建程序。


然后学习错误处理(异常:http://www.techbeamers.com/python-try-except-beginners)和文件管理(文件I/O:http://www.techbeamers.com/python-file-handling-tutorial-beginners)。


之后,了解Python中函数(https://coolpythoncodes.com/python-function)和类(https://coolpythoncodes.com/object-oriented-programming-python)的概念。使用函数和类重写之前的程序。


了解Python的模块和库。Python有非常多的库,虽然没有直接包含,但是很容易安装,没有任何理由去重新造轮子。


现在是帮助他人学习Python的时候了。教会别人是加强你所学知识的最好方法之一。


参加论坛上的讨论贴,帮助其他成员解决问题。加入社区,并考虑在StackOverflow或Reddit上回答问题。


最后,选择一个专业领域。例如,你可以开始投身机器学习。这将需要你学习一些第三方库和包,如Pandas、NumPy、SciPy等。


AniruddhaChaudhari


AniruddhaChaudhari拥有计算机科学硕士学会(来自印度NITTrichy),他是CSEstack.org(ProgrammingandComputerSciencePortal)的创始人。Python是他第一个也是他最喜爱的语言。除此之外,他还学习了多种编程语言,如C、C++等。他的博客(http://www.csestack.org/python/)上有很多非常棒的Python教程。




同其他编程语言(如C、C++和Java)相比,Python学习起来很容易,至少入门很容易。


Python有两个版本:Python2.x和Python3.x。选择合适的Python版本非常重要。


有很多大公司使用Python2.x构建项目。所以如果你想参与这些项目,Python2.x是正确的选择。如果你不确定,那么选择Python3.x吧,因为Python3.x是未来。


如果你想有效地学习Python,你首先应该专注于两件事:


了解Python中的数据结构;


熟悉Python库的使用。


Python数据结构包括字符串、列表、元组等等。


它们的区别是什么?何时使用哪种结构及其各种关联的方法来操纵数据?


Python提供的库非常强大。有大量的库可用于各种项目。


例如,如果你想成为一名数据科学家,有许多模块和库供你使用,如Panda、Numpy、Tensoflow。找到你感兴趣的领域,并搜索该领域的库,这些库通常都可以免费使用。


为了进行实际编程,需要遵循如下步骤:


创建一个目录来保存所有的Python程序;


开始先开发一些小项目。如果你正在学习GUI,那么可以开发一个计算器(http://www.csestack.org/code-for-gui-calculator-in-python),从社交网站获取数据并进行分析;


把实用函数编写成一个Python程序;


在新的Python程序中使用这些实用函数作为模块。(重复使用代码是很好的做法,可以节省大量时间。)


从你的小项目中创造出一些东西来激励自己,给自己一些值得学习的东西,并保持持续。找机会奖励自己。开发自己的兴趣保持长期学习!


学习一门编程语言不是要知道它所有的语法。而是了解它的特点和优势,以及你可以用它解决什么实际问题。至于语法你随时都可以通过Google进行查询。


你练习的越多,对编程语言的掌握就越好。用Python进行快乐编程!


KrishnaKantMishra




我是KrishnaKantMishra,喜欢看板球,解决数学难题和听音乐。我来自印度,是一名计算机科学工程专业的毕业生。我目前在WiproTechnology公司担任VMWare/Cloud管理员。


高效学习Python的方法


首先要回答的问题是我为什么学习Python?这是前提。


学习Python的基础知识很简单,但想要将知识应用到项目中可能很困难。我自身在尝试学习没有上下文和应用程序的代码。


以下是我高效学习Python的技巧:


一、学习Python语法


毫无疑问,你需要掌握基本知识。你应该有一个基本的语法在你的脑海中,至少能够知道用[:]进行字符串操作。


如果你连基本的语法都不了解,那么很难实现有用的东西。但是不要学习基础方面花太长的时间。我们的目标是学习非常基础的知识,然后在自己感兴趣的领域开始自己的项目。


我自己花了不到一个星期的时间,在Codecademy上学习Python的基础知识。这足以开始一个项目了。


二、看尽可能多的教程


假设我想了解Python中的SQLite数据库。


我首先在Google上搜索教程并扫描搜索结果,然后选择深入和易于理解的教程。


我通常使用“PrintFriendly&PDF”(谷歌浏览器扩展)将在线教程转换为PDF,以便我可以离线阅读在线教程。当然阅读书籍也可以,我选择了特定领域且通俗易懂的书籍(SQLitedatabaseinPython)。


在学习过程中如果遇到困难,我会在Reddit、StackOverflow和Quora等社区中向其他Python程序员寻求帮助。


问题解决之后,我会想一个我可以实现的项目,比如把我从网上抓取的数据存储在数据库中。


我的原则是,不要只阅读教程,你需要亲自动手写代码,否则很容易遗忘。


独立完成项目


掌握了Python语法的基本知识之后,你又完成了Python中一个特定领域的教程。现在就可以开始一个项目了。


你的项目可以是任何东西:


自动化领域(PracticalProgrammingforTotalBeginners:https://automatetheboringstuff.com)


编写一些你感兴趣的东西,比如数据分析(PythonProgrammingTutorials:http://pythonprogramming.net/dashboard)


需要注意的是:不是不提倡看教程,而是不提倡看大量的基础教程。例如,当你尝试执行特定的项目时,Python编程教程是可以查看的。


但是要尽量独立,先尝试自己解决问题,然后再看别人是怎么解决问题的。


不断迭代写好的代码


不断温习Python语言特性,找出哪些方法是已经过时的。所以,再次强化字典的使用,以及对字符串进行切片和反转处理等等。


当你意识到你的代码不好时该怎么做


在这一点上,你可以把自己的代码与其他人的进行比较。比较时,请记住以下问题:


如何使我的代码更快?


如何改进我的代码?


总结


Python发展和变化非常之快。大概只有少数人可以声称自己完全理解它。你需要进行持续地学习和开发项目。


如果你这样做的话,你会发现自己在6个月前写的代码简直糟糕得没法看。如果你有这样的体会,那证明你走在正确的轨道上。


Python是一门非常有趣和有益的语言,如果使用正确的学习方法,我相信任何人都可以达到高水平的掌握程度。


CliffJohnHill




入门


Python从一开始就被设计成一门易学的语言。最有效的学习方法是通过在线课程学习,比如:


Google的Python教程:


https://developers.google.com/edu/python/introduction


Codecademy一些课程:


https://www.codecademy.com


Python.org的Python教程:


https://www.python.org


学习Python之时,首先需要掌握简单的语法和基本概念。个人建议找一个感兴趣的开源项目并投入其中。


进阶


进一步的培训可以来自PyCon讲座(http://pyvideos.org),几乎所有的讲座都可以通过YouTube在线获得。PythonMushWatch(http://pymust.watch)的视频比较集中,另外我推荐RaymondHettinger的视频(他非常擅长搞演讲)此外DavidBeazly、BrandonRhodes、GuidovanRossum和NedBatchelder的教程也不错。


“PythonCrashCourse”这本书很棒,它可以让你快速掌握基本知识,然后使用Python进行一些实用的编程。


Python学习资源汇总


以下是一些有用的学习资料,可以帮助你学习Python。


Python官方文档


Python3.6.3文档:https://docs.python.org/3


Python2.7.14文档:https://docs.python.org/2.7


Python好书推荐


TonyGaddis的《StartingOutwithPython》


PythonCrash课程:EricMatthes撰写的《Python编程从入门到实践》


ZedShaw的《"笨办法"学Python》


DougHellmann的《ThePythonStandardLibrarybyExample》


AlSweigart的《Python编程快速上手:让繁琐工作自动化》


AllenB.Downey的《像计算机科学家一样思考Python》


MarkPilgrim的《DiveIntoPython3》


Python程序员播客


MichaelKennedy的TalkPythonToMePodcast:


https://talkpython.fm


MichaelKennedy和BrianOkken主持的PythonBytes:


http://pythonbytes.fm


obiasMacey主持的Podcast.__init__:


https://www.podcastinit.com


KennethReitz和AlexGaynor主持的ImportThis:APodcastforHumans


TestandCodePodcast:


http://pythontesting.net/test-podcast


Python程序员简报


Pycoder’sWeekly:http://www.pycoders.com


PythonTips:https://pythontips.com


ImportPython:http://importpython.com/newsletter


PythonWeekly:https://www.pythonweekly.com


最后,也欢迎大家在评论区补充Python的学习资料,技术之路,我们共同进步。


灰机带翅膀
4楼 · 2021-08-26 14:14

PyCharm-错误-找不到指定文件python.exe的解决方法

1、现象

系统提示找不到指定的文件:

Error running 'hello': Cannot run program "B:\pystudy\venv\Scripts\python.exe" (in directory "\python-study"): CreateProcess error=2, 系统找不到指定的文件。

blank.gif

2、原因

原来的工程目录(B盘)下,保存了python的编译环境,包括python.exe文件。工程目录移动到F盘以后,工程设置中找不到python.exe程序,因此报错,需要修改设置。

3、解决

打开菜单“File/Setting”。

blank.gif

找到“Project Interpreter” ,再选择显示全部,如下图:

blank.gif

先删除旧的程序位置。

blank.gif

再添加一个已有的ptyhon环境。


相关问题推荐

    没有解决我的问题,去提问