回覆列表
  • 1 # 趣味C語言CPP

    首先,做為一個程式設計師,死扣著一門語言,就是很不應該的事情。基本上等到你大四的時候,應該有這樣的能力,除了c艹有時候令人無語之外。大多數語言,給你一星期時間,你就可以上手開發了,一個月的時候,你就可以熟練的寫程式碼了。畢竟主流語言的語法,記憶體分配都是差不多的。

    然後,剩下的就是你的深度了。你做python開發是吧?看過原始碼解析這本書嘛?看過原始碼嘛?知道Python int型別,string型別,list底層機制嘛?他們的記憶體池有啥不同?雖然它的垃圾回收器就是個玩具,但你記憶體回收瞭解過嘛?不說這個,你看過框架嘛,別光用,試著自己寫過嘛?反正你要就是死寫程式碼,那你寫了一年python真白瞎了。因為python的確太簡單了,分分鐘上手,不去主動學習,完全就是個體力活,寫了上萬行也沒用啊。。沒有任何技術含量。

    你要這些真學好了,你怎麼找不到好工作?不說別的,python原始碼你看了一小部分了,說明你的c艹肯定也不差了。不然你也看不懂啊。

    然後,除了這個之外,你就真的死抱著python不放了?python是好用,問題是你要死抱著,只能說明你學習的興趣太小。拘泥於一個語言,眼光很容易被限制,真的是很不好的事情。學學java,看看人家的垃圾回收器也好。python好,可以也去學習下機器學習嘛。總之,你這個問題問的很奇怪。。

  • 2 # starwym31

    現在python正是大火的時候.python在做web方面還是很有優勢的,python 有django .flash.

    django 框架尤其要說一下,他提供全套的解決方案(full-stack framework + batteries included),基本要什麼有什麼(比如:cache、session、feed、orm、geo、auth),而且全部Django自己造,開發網 站應手的工具Django基本都給你做好了,因此開發效率是不用說的,出了問題也算好找,不在你的程式碼裡就在Django的原始碼裡。

    強大的URL路由配置,Django讓你可以設計出非常優雅的URL,在Django裡你基本可以跟醜陋的GET引數說拜拜。

    自助管理後臺,admin interface是Django裡比較吸引眼球的一項contrib,讓你幾乎不用寫一行程式碼就擁有一個完整的後臺管理介面。

    系統緊耦合,如果你覺得Django內建的某項功能不是很好,想用喜歡的第三方庫來代替是很難的,比如下面將要說的ORM、Template。要在Django裡用SQLAlchemy或Mako幾乎是不可能,即使打了一些補丁用上了也會讓你覺得非常非常彆扭。

    總的來說,Django大包大攬,用它來快速開發一些Web運用是很不錯的。如果你順著Django的設計哲學來,你會覺得Django很好用,越用越順手.

    使用django的後臺管理

    1.建立一個管理員使用者

    python manage.py createsuperuser, 按提示輸入使用者名稱,郵箱,密碼

    接著python manage.py runserver啟動伺服器,透過127.0.0.1:8000/admin訪問,輸入上面的使用者名稱,郵箱,密碼

    進入管理站點,預設可以對groups、users進行管理

    2.如果想將後臺改為中文

    可在setting.py 裡將 LANGUAGE_CODE = "en-us" 改為"zh-hans"

    另外還可以設定時區 TIME_ZONE = ‘Asia/Shanghai’

    3.想在後臺看到資料庫資料,需要向admin註冊booktest的模型

    開啟booktest/admin.py 檔案,註冊模型

    from django.contrib import admin

    from models import BookInfo

    admin.site.register(BookInfo)

    重新整理管理頁面,可以對BookInfo的資料進行增刪改查操作

    問題:如果在str方法中返回中文,在修改和新增時會報ascii的錯誤

    解決:在str()方法中,將字元創末尾新增“.encode(‘utf-8’)”

    4.自定義管理頁面

    Django提供了admin.ModelAdmin類

    透過定義ModelAdmin的子類,來定義模型在Admin介面的顯式方式

    class QuestionAdmin(admin.ModelAdmin):

    ...

    admin.site.register(Question,QuestionAdmin)

    list_display = ["pk","bittle","bpub_date"]

    list_filter:過濾欄位,過濾框會出現在右側

    list_filter = ["bittle"]

    search_fields:搜尋欄位,搜尋框會出現在上側

    search_fields = ["bittle"]

    list_per_page:分頁,分頁框會出現在下側

    list_per_page =10

    例如:

    在admin.py 裡

    from django.contrib import admin

    from models import*

    class BookInfoAdmin(admin.ModleAdmin):

    list_display = ["id","btitle","bpub_date"]

    admin.site.register(BookInfo,BookInfoAdmin)

    admin.site.register(HeroInfo)

    這樣後臺資料就顯示為

    id btitle bpub_date

    1 abc 2017/10/7 11:02

    2 haha 2017/10/7 11:02

    新增、修改頁屬性

    fields:屬性的先後順序

    fields = ["bpub_date","btitle"]

    fieldsets:屬性分組

    fieldsets = [

    ("basic",{"fields":["btitle"]}),

    ("more",{"fields":["bpub_date"]}),

    ]

    5.關於關聯物件的操作

    對於HeroInfo模型類,有兩種註冊方式

    方式一:與BookInfo模型類相同

    方式二:關聯註冊

    按照BookInfo的註冊方式完成HeroInfo的註冊

    接下來實現關聯註冊

    from django.contrib import admin

    from models import BookInfo,HeroInfo

    class HeroInline(admin.StackedInline):

    model = HeroInfo

    extra =2 (額外嵌入2個HeroInfo類)

    class BookInfoAdmin(admin.ModelAdmin):

    list_display = ["id","btitle","bpub_date"]

    inlines = [HeroInfoInline] (在BookInfo裡嵌入兩個HeroInfo)

    admin.site.register(BookInfo,BookInfoAdmin)

    admin.site.register(HeroInfo)

    可以將內嵌的方式改為表格

    class HeroInfoInline(admin.TabularInline)

    現在正是python大火的時候.,有必要要學習一下.我現在正在學習django,他還是很強大的.!

  • 中秋節和大豐收的關聯?
  • 網站設計思路是什麼?