Day1: Python 第一天學習記錄

来源:https://www.cnblogs.com/kongxianghui/archive/2018/01/06/8184752.html
-Advertisement-
Play Games

一、Python簡介 1、Python創始人 Guido van Rassum, 於1989年,創立。 2、Python的主要應用領域 雲計算:openstack web 開發: 科學運算 AI 金融:量化交易、金融分析等 圖形GUI 語言的類型: 3、編程語言的類型 解釋型語言:容易移植 編譯型語 ...


一、Python簡介

1、Python創始人 Guido van Rassum, 於1989年,創立。

2、Python的主要應用領域

  • 雲計算:openstack
  • web 開發:
  • 科學運算
  • AI
  • 金融:量化交易、金融分析等
  • 圖形GUI
  • 語言的類型:

3、編程語言的類型

  • 解釋型語言:容易移植
  • 編譯型語言:性能好,如C++
  • 動態語言:運行期間才去做數據類型檢查,如Python,Ruby等
  • 靜態語言:數據類型是在編譯期間檢查的。如C/C++,JAVA,C#
  • 強類型定義語言:強制數據類型定義的語言。是類型安全的語言。如Python,JAVA
  • 弱類型定義語言:數據類型可以忽略的語言。如vbscript,shell 腳本

4、Python的優缺點:

優點:

  • 簡單優雅明確
  • 開發效率高:大量第三方庫,避免重覆造輪子
  • 高級語言:不需要考慮記憶體管理
  • 可移植性:不調用操作系統本身的庫,則可以無需修改
  • 可擴展:不需要公開的部分可以用C/C++
  • 可嵌入:嵌入其他程式

缺點:

  • 速度慢:大多數情況下用戶是無法感知的。
  • 代碼不能加密
  • 線程不能利用多CPU的問題:不能利用多核優勢的。

二、Python發展史

  • 1989年誕生,1991年第一個python編譯器誕生;1999年出現來第一個pythonweb框架
  • 2010年,Python2.7是目前最廣泛使用的版本,官方支持到2020年
  • Twisted是一個強大的非同步網路框架,目前部分不支持Python3.0
  • IDE用Pycharm:開發效率高,自動補全

三、變數、字元編碼

1、變數:用於保存信息以便後續使用,如:name=“Cat”,是一個字元串,輸出結果:print(“His name is :” ,name)

  • 變數名只能是字母、數字或下劃線的任意組合;第一個字元不能是數字;一些特定單詞不能是變數名
  • 儘量用英文單詞,用下劃線分割,或者用首字母寫分割如: FlyBirdInSky,駝峰型

2、字元編碼

ASCII碼無法將世界上的各種文字和符號全部表示,統一為Unicode,統一占用2個位元組。又制定來UTF-8,是unicode的子集,可變長度。

註釋: 單行用#,多行用‘’‘ ’‘’ 或3個雙引號

四、用戶輸入和格式化輸出

1、輸入

username=input('username:')

password=input('password:')

 print(username,password)

2、格式化輸出的三種方法:

# 格式化輸出的3種方法

info1='''
--------info of %s-------
name=%s
age=%d
address=%s
salary=%s
'''%(name,name,age,address,salary)

print(info1)

info2='''
======info of {0} =====
name={0}
age={1}
address={2}
salary={3}
'''.format(name,age,address,salary)
print (info2)

info3='''
********information of {_name}************
name={_name}
age={_age}
address={_address}
salary={_salary}

'''.format(_name=name,
_age=age,
_address=address,
_salary=salary)

print(info3)
------------------
導入第三方庫 import
例子:
import getpass
username=input("username:")
passwd=getpass.getpass("password:") #密碼密文
print(username,passwd)
五、判斷和迴圈

條件判斷 if--else:

username =input("username:")
password=input("password:")
_username="kong"
_password="123123"
if _username==username and password==password :
print("welcome user {name} login.....".format(name=username))
else:
print ("invalid username or password")

複雜條件判斷:if====elif----else:

age_of_cat=9
_age_of_cat=int(input("guess age:"))
if _age_of_cat==age_of_cat:
print("yes,you got it!")
elif _age_of_cat>age_of_cat:
print("think smaller !")
else:
print("think bigger !")
while 迴圈/break退出當前迴圈:
count=0
age_of_cat=9
while count<3:
_age_of_cat=int(input("guess age:"))
if _age_of_cat==age_of_cat:
print("yes,you got it!")
break
elif _age_of_cat>age_of_cat:
print("think smaller !")
else:
print("think bigger !")
count+=1
  if count==3:
  confirm_continue=input("do you want to contine?")
  if confirm_continue!='n':
count=0
else:
  print("you have tried too many times!")
for 迴圈以及迴圈嵌套:
for i in range(10):
if i <3:
print("loop:",i)
else:
continue
print("welcome again!!")
-------
for a in range(10):
print("=========",a)
for b in range(10):
print(b)
==========第一節學習記錄 ending============





 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • package cn.itcast.bos.utils; import java.util.Arrays; import net.sourceforge.pinyin4j.PinyinHelper; import net.sourceforge.pinyin4j.format.HanyuPinyin ...
  • 1.install一個npm包的時候,總是會報這個警告; 網上查資料知道,這個fsevents是mac下用的,windows忽略即可; 2.關於在main.js中引入less文件的問題, 就會報這個錯,說相關模塊沒有找到,這個問題,我在網上找了很多資料,然後我也都試了,都不好用,於是我的解決辦法就是 ...
  • 現效果如下: 由於我這邊不需要其他按鈕,就沒寫 數據是由後臺提供,在這做了個小列子 後臺代碼 頁面代碼 Js ...
  • 期末,要交一個大作業,正巧之前跑國圖借書的時候,暈頭轉向的,國圖內居然沒有導航!!!借這個機會做一個室內導航的demo,只是半成品,還需要加入室內定位,匹配一下坐標才能在實際中使用。 demo:利用蜂鳥雲平臺進行二次開發實現。愛琴海商城內部尋徑。 主要功能: 代碼!不給~ 上圖!! 初始界面 查找終 ...
  • 定義求最大最小值的函數 輸入為: ...
  • 上面這段代碼一直在用,面試的時候也經常被問到,卻從未深究過,不知道線程池到底是怎麼回事,今天看看源代碼,一探其究竟 線程池主要控制的狀態是ctl,它是一個原子的整數,其包含兩個概念欄位: workerCount:有效的線程數量 runState:線程池的狀態 為了在一個整型值裡面包含這兩個欄位,我們 ...
  • 最近總是接觸時間處理問題,花了點時間整理以前使用過的方法,修改整合,記錄下來方便以後使用。 package cc.vvxtoys.util; import java.text.ParseException; import java.text.SimpleDateFormat; import java ...
  • 一、異常處理 Spring提供了多種方式將異常轉換為響應: 特定的Spring異常將會自動映射為指定的HTTP狀態碼 在預設情況下,Spring會將自身的一些異常自動轉換為合適的狀態碼,從而反饋給客戶端。實際上,如果沒有出現任何映射的異常,響應都會帶有500狀態碼。映射表如下: 自定義異常上可以添加 ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...