python初體驗-hello world答案_Python初體驗_基礎(一)

一:變量

變量的賦值:

name = “Meng”

上述代碼聲明了一個變量,變量名為name,變量name的值為:”Meng“

變量定義:

一個在內存存數據的容器。

變量的意義:

保存程序執行的中間結果或狀態,以供后面的代碼調用。

變量定義規則:

變量名只能是字母,數字或下劃線的任意組合;

變量名的第一個字符不能是數字;

關鍵字不能聲明為變量名;

二:縮進:

Python設計者有意設計限制性很強的語法,使得不好的編程習慣(例如if語句的下一行不向右縮進)都不能通過編譯,以此來強制程序員養成良好的編程習慣。并且Python語言利用縮進表示語句塊的開始和退出(Off-side規則),而非食用花括號或者某種關鍵字。增加縮進表示語句塊的開始,而減少縮進則表示語句塊的退出。縮進成為了語法的一部分。

例如if語句:

age = int(input("age:"))if age < 21:print("你不能抽煙!")print("這句不在if語句塊中")

注:上述例子為python3.5版本的代碼。

根據PEP的規定,必須使用4個空格來表示每級縮進(不清楚4個空格的規定如何,在實際編寫中可以自定義空格數,但是要滿足每級縮進間空格數相等)。

三:注釋:

當行注釋:#被注釋內容

#name = "Meng"

多行注釋:“”“被注釋內容”“”或’‘’被注釋內容‘’‘

'''age = int(input("age: "))

if age < 21:

print("你不能抽煙!")

print("這句不在if語句塊中")'''

四:單引號,雙引號和三引號

在一般情況下單引號和雙引號是沒有區別的,但是如果字符串中有相同的字符時需要使用\進行轉義,例如:

1 print("hello word")2 print('hello word')

1和2結果都是hello word

3 print("I\'m")4 print("I'm")

3和4的結果都是I'm

5 print('I"m')6 print('I\"m')

5和6的結果都是I“m

三引號和它們不同之處:”所見即所得“,對于多行字符串時用三引號更直觀點(若用單引號或雙引號需要進行轉義),例如:

print('''my name is Meng,

hello word,

I like python.''')

結果是:

my name is Meng,

hello word,

I like python.

五:用戶輸入:

#!/usr/bin/env python#-*- coding: utf-8 -*-

name = input("What is your name?") #將用戶輸入的內容復制給name變量print("hello"+ name )

以上結果為:

What isyour name? Meng #用戶輸入的內容

hello Meng

六:Python內部執行過程:

編譯過程概述:

當我們執行Python代碼的時候,在Python解釋器用四個過程“拆解”我們的代碼,最終被CPU執行返回給用戶。

首先當用戶鍵入代碼交給Python處理的時候會先進行詞法分析,例如用戶鍵入關鍵字或者輸入關鍵字有誤時,都會被詞法分析所觸發,不正確的代碼將不會被執行。

下一步Python會進行語法分析,例如當“for i in test:”中,test后面的冒號如果被寫為其他符號,代碼依舊不會被執行。

最后關鍵的過程,在執行Python前,Python會生成.pyc文件,這個文件就是字節碼,如果不小心修改了字節碼,Python下次重新編譯該程序時會和其上次生成的字節碼文件進行比較,如果不匹配則會將被修改過的字節碼文件進行覆蓋,以確保每次編譯后的字節碼的準確性。

那么什么是字節碼?字節碼在python虛擬機程序里對應的是PyCodeObject對象。.pyc文件是字節碼在磁盤上的表現形式。簡單來講就是在編譯代碼的過程中,首先會將代碼中的函數、類等對象分類處理,然后生成字節碼文件。有了字節碼文件CPU可以直接識別字節碼文件進行處理,接著Python就可以執行了。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/374222.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/374222.shtml
英文地址,請注明出處:http://en.pswp.cn/news/374222.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Codeforces Round #365 (Div. 2) D. Mishka and Interesting sum (離線樹狀數組+前綴xor)

題目鏈接&#xff1a;http://codeforces.com/contest/703/problem/D 給你n個數&#xff0c;m次查詢&#xff0c;每次查詢問你l到r之間出現偶數次的數字xor和是多少。 我們可以先預處理前綴和Xor[i]&#xff0c;表示1~i的xor和。因為num^num0&#xff0c;所以Xor[r] ^ Xor[l - 1…

九齊NY8B072A單片機使用筆記(二)TIMER1/2/3定時器

先上代碼 volatile unsigned long g_timer0_delay_conut 0;void main(void) {DISI(); //Disable all unmasked interruptsNy8b072a_Gpio_Init();//Ny8b072a_Timer1_Init();//Ny8b072a_Timer2_Init();Ny8b072a_Timer3_Init();ENI(); // Enable all unmasked interrupts whil…

新的Java緩存標準(javax.cache)

這篇文章探討了新的Java緩存標準&#xff1a;javax.cache。 它如何適應Java生態系統 該標準由JSR107開發&#xff0c;作者是共同規范負責人。 JSR107包含在JSR342開發的Java EE 7中。 Java EE 7將于2012年底完成。但是與此同時&#xff0c;javax.cache將在Java SE 6和更高版本…

Eclipse搭建scala環境(解決“JDT weaving is currently disabled”問題)

隨著Apache Spark&#xff0c;scala也成了必學的語言&#xff0c;下面講一下Eclipse搭建scala開發環境。 網上有很多的教程&#xff0c;但是給的scala的地址下載的插件無法開發scala&#xff0c;會出現“JDT weaving is currently disabled”的問題,這是由于使用了錯誤的Scala地…

python如何輸出結果_如何在python2.7中打印輸出結果?

我正在存儲一些數據&#xff0c;如溫度&#xff0c;濕度和強度&#xff0c;這是我的Arduino輸出和輸入為我的python2.7&#xff0c;我正在繪制圖表的數據。我也想將Arduino輸出存儲到文本文件中&#xff0c;但是我無法這樣做&#xff1a; 這是我的python代碼import serial impo…

python字符串連接的三種方法及其效率、適用場景詳解

python字符串連接的方法&#xff0c;一般有以下三種:方法1&#xff1a;直接通過加號()操作符連接website& 39;python& 39;& 39;tab& 39;& 39; com& 39;方法2 python字符串連接的方法&#xff0c;一般有以下三種: 方法1&#xff1a;直接通過加號()操作符…

算法—遞歸實現 C(m,n)

/* 遞歸實現 C(m,n) */#include "stdio.h" int m,n,s,a[20];int main() {int c(int k);s0; a[0]0;scanf("%d%d",&m,&n);printf("\nC(%d,%d)%d\n",m,n,c(1));}//組合遞歸函數C(k) int c(int k) {int i,j;if(k<n){for(ia[k-1]1;i<m…

九齊51單片機使用注意事項:不要用float

在使用ADC計算電壓值時用了float&#xff0c;NY8B072A堆棧直接炸了&#xff0c;用32機習慣了&#xff0c;一直想不通&#xff0c;查了手冊才知道。 手冊是&#xff1a;《NYC_NY8_UM_v1.5_SC.pdf》 鏈接&#xff1a;https://www.nyquest.com.tw/cn/support/download/Nyquest_SW…

有益的CountDownLatch和棘手的Java死鎖

您是否曾經使用過java.util.concurrent.CountDownLatch &#xff1f; 這是在兩個或多個線程之間實現同步的非常方便的類&#xff0c;在該類中&#xff0c;一個或多個線程可以等待&#xff0c;直到在其他線程中執行的一組操作完成為止&#xff08;請參閱javadoc和此文章 &#x…

算法—回溯法橋本分數式

/* 將1-9九個數不重復地賦給不同的9個元素 &#xff0c;實現形如a/bcd/eff/hi 的形式&#xff1a;例&#xff1a;1/265/784/39 1/325/967/84 &#xff08;注意&#xff1a;1/265/784/39 和5/781/264/39 只能算一種解&#xff09;求滿足條件的解共有多少個&#xff1f; */ #in…

codeforces 703B

題意&#xff1a;有n座城市&#xff0c;其中k座是省會城市&#xff0c;每個城市有對應的點權&#xff0c;城市1-2-3-...-n-1有一條路相連&#xff0c;省會城市與其他所有的城市相連&#xff0c;且每兩個城市間最多有一條路&#xff0c;每條路的邊權為路連接的兩座城市的點權乘積…

go 基準測試 找不到函數_基于Golang做測試

本文在實習期間完成并完善&#xff0c;無任何公司機密&#xff0c;僅做語言交流學習之用。持續更新。1.Golang的單元測試Go語言提供了豐富的單測功能。在Go中&#xff0c;我們通常認為函數是最小的可執行單元。本例中使用兩個簡單的函數&#xff1a;IsOdd和IsPalindrome來進行G…

九齊NY8B072A單片機使用筆記(三)模擬串口RX

因為這款單片機沒有硬件串口&#xff0c;所以需要我們自己做軟件模擬串口。 用PA3作為RX&#xff0c;因為PA3可以作為外部輸入中斷EXTI1。 本人首先用輪詢的方式查PA3是否從高電平跳變到低電平&#xff08;起始信號&#xff09;&#xff0c;但是因為還有別的業務邏輯&#xf…

Java RESTful API集成測試

這篇文章將重點介紹為RESTful API&#xff08;帶有JSON有效負載&#xff09;編寫Java集成測試的基本原理和機制。 目的是對技術進行介紹&#xff0c;并為基本正確性編寫一些測試。 這些示例將使用最新版本的GitHub REST API。 對于內部應用程序&#xff0c;這種測試通常將在持…

java警惕自增的陷阱

public class proposal{public static void main(String[] args) {int count0;for(int i0;i<10;i){countcount;}System.out.println(count);}}結果輸出&#xff1a;0/*步驟一&#xff1a;JMV吧count值&#xff08;其值是0&#xff09;拷貝到臨時變量區&#xff1b;步驟二:co…

[LindCode] Binary Tree Postorder Traversal

Binary Tree Postorder Traversal Given a binary tree, return the postorder traversal of its nodes values. Example Given binary tree {1,#,2,3}, 1\2/3return [3,2,1]. Challenge Can you do it without recursion? SOLUTION 1: recursion&#xff1a; 分治法解決之&am…

九齊NY8B072A單片機使用筆記(一)TIMER0定時器

先上代碼 //8bit count up , max 0xFF void Ny8b072a_Timer0_Init(void) {PCON1 C_TMR0_Dis; // Disable Timer0//1 * (255 - 5) 250usTMR0 5; // Load 0x00 to TMR0 (Initial Timer0 register)//16M 2T Div8 1usT0MD C_PS0_TMR0 | C_PS0_Div8 ; // Prescaler0 is assign…

python菜鳥教程split_Python split()方法

網頁地址解析&#xff1a; #codingutf-8 str"http://www.runoob.com/python/att-string-split.html" print("0:%s"%str.split("/")[-1]) print("1:%s"%str.split("/")[-2]) print("2:%s"%str.split("/"…

金山毒霸垃圾清理

金山毒霸-垃圾清理-單文件封裝,清潔潔癖的愛好&#xff01; 實話&#xff0c;金山的軟件確實不錯。展望金山可以在軟件行業&#xff0c;做出讓世界都使用的。為國人扛起一片天 下載地址&#xff1a; http://pan.baidu.com/s/1dFa7GdV轉載于:https://www.cnblogs.com/xiaochina/…

并發優化–減少鎖粒度

在高負載多線程應用程序中&#xff0c;性能非常重要。 開發人員必須意識到并發問題才能獲得更好的性能。 當我們需要并發時&#xff0c;我們通常擁有必須由兩個或更多線程共享的資源。 在這種情況下&#xff0c;我們有一個競爭條件 &#xff0c;其中只有一個線程&#xff08;在…