Python自動化之語法基礎

1 第一個程序 hello world

在Linux環境下執行 vim hello.py

#!/usr/bin/env python     #指定解釋器
print("hello world")

運行Python程序

Python hello.py
  1. 第一行是指定解釋器,另一種寫法是#!/usr/bin/python,后者限制了Python的位置,如果bin目錄下沒有Python這個解釋器就會有問題,最好的寫法是上面的寫法。
  2. 如果要./hello.py這樣執行的話,需要授予755權限,chmod 755 hello.py即可

2 變量和字符編碼

變量定義規則

  • 變量名只能是 字母、數字或下劃線的任意組合
  • 變量名的第一個字符不能是數字
  • 以下關鍵字不能聲明為變量名
  • ['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']

變量賦值問題

name = "me"name2 = nameprint(name,name2)name = "me_new"print(name,name2)

執行結果

me me  
me_new me  

從上述結果可以看出那么重新賦值name2并沒有發生任何變化,那是因為name賦值為name2時,只是把me的內存地址給了name2,所以name2就指向了me,而重新給name賦值后,name的指向變了,但name2的指向還是指向me的內存地址,所以name2的結果還是me。

3 字符編碼

3.1 Python里面的中文寫法

在Python3下是支持中文的

print ("你好中國")

Python2的寫法

#!/usr/bin/env python
# -*- coding:utf-8 -*-print "你好中國"

顯然ASCII碼無法將世界上的各種文字和符號全部表示,所以,就需要新出一種可以代表所有字符和符號的編碼,即:Unicode

Unicode(統一碼、萬國碼、單一碼)是一種在計算機上使用的字符編碼。Unicode 是為了解決傳統的字符編碼方案的局限而產生的,它為每種語言中的每個字符設定了統一并且唯一的二進制編碼,規定雖有的字符和符號最少由 16 位來表示(2個字節),即:2 16 = 65536,**
注:此處說的的是最少2個字節,可能更多

UTF-8,是對Unicode編碼的壓縮和優化,他不再使用最少使用2個字節,而是將所有的字符和符號進行分類:ascii碼中的內容用1個字節保存、歐洲的字符用2個字節保存,東亞的字符用3個字節保存...

python如何使用注釋
單行注釋 #后面加被注釋的內容
多行注釋 可以在每行前面加#或者使用'''被注釋的內容'''  

4 用戶輸入

輸入名字并打印出來

#!/usr/bin/env python
_*_coding:utf-8_*_name = input("input your name:")
print(name)

getpass模塊初始

# !/usr/bin/env python
# -*- coding: utf-8 -*-import getpass# 將用戶輸入的內容賦值給 name 變量
password = getpass.getpass("input password:")# 打印輸入的內容
print(password)

4.1 3種格式化輸出

第一種%格式化輸出

#!/usr/bin/env python
#Author:wushipengname = input("name:")
job = input("job:")
salary = input("salary:")info ='''
--------info of %s----------
name:%s
job:%s
salary:%s
''' % (name, name, job, salary)info1 ='''
--------info of {name}----------
name:{name}
job:{job}
salary:{salary}
'''.format(name=name, job=job, salary=salary)

結果

name:wu
job:it
salary:3000--------info of wu----------
name:wu
job:it
salary:3000

第二種format格式化輸出

#!/usr/bin/env python
#Author:wushipengname = input("name:")
job = input("job:")
salary = input("salary:")info1 ='''
--------info of {name}----------
name:{name}
job:{job}
salary:{salary}
'''.format(name=name, job=job, salary=salary)

結果

name:wu
job:it
salary:3000--------info of wu----------
name:wu
job:it
salary:3000

第三種format數字代指變量

#!/usr/bin/env python
#Author:wushipengname = input("name:")
job = input("job:")
salary = input("salary:")info2 = '''
--------info of {0}----------
name:{0}
job:{1}
salary:{2}
'''.format(name, job, salary)

結果

name:wu
job:it
salary:3000--------info of wu----------
name:wu
job:it
salary:3000

getpass可以使輸入密碼的時候不顯示出來

5 表達式if ... else

猜年齡案例

#!/usr/bin/env python
#_*_coding:utf-8_*_age = 28
while True:age_new = int(input("input you age:"))if age_new > age:print("it's bigger than age")elif age_new < age:print("it's smaller than age")else:print("you guess it")break

while循環可以讓用戶一直猜,直到猜出來為止,break直接結束整個循環。與之類似的還有continue,continue是結束本次內循環,進行下一次外循環。

while實現限制5次,5次之后直接結束

age = 28
count = 0
while True:age_new = int(input("input you age:"))
if age_new > age:print("it's bigger than age")
elif age_new < age:print("it's smaller than age")
else:print("you guess it")count += 1
if count == 5:break

6 for循環

#!/usr/bin/env python
#_*_coding:utf-8_*_for i in range(10):
print(i)結果:
0
1
2
3
4
5
6
7
8
9

猜年齡只限制輸入5次

# !/usr/bin/env python
# _*_coding:utf-8_*_age = 28
for i in range(5):age_new = int(input("input you age:"))if age_new > age:print("it's bigger than age")elif age_new < age:print("it's smaller than age")else:print("you guess it")break

轉載于:https://www.cnblogs.com/wspblog/p/5708237.html

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

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

相關文章

jquery分頁插件

jquery.mypagination.js 文件&#xff1a; /* * * * jquery分頁插件* 1.0 zheng 2014-03-18 * 1.1 兼容url包含#號地址&#xff0c;GoToPage可以指定錨點&#xff08;特殊需求&#xff09;2014-04-10 09:00:34* 1.2 可以配置分頁條列出頁面數* 1.3 增加了頁面碼跳轉功能* …

Android之如何分析手機系統相冊圖片和視頻刪除后保存的位置

1 需求 需要獲取各種型號手機系統相冊圖片和視頻刪除后保存的位置 2 分析 1)我們可以通過在sdcard目錄下進行相關查找文件夾關鍵字,對 "cycle"或者"trash"或者*galle*進行忽略大小寫模糊查詢都有文件夾 find . -iname *cycle* find . -iname *trash*…

WPF 實現水珠效果按鈕組

本文經原作者授權以原創方式二次分享&#xff0c;歡迎轉載、分享。原文作者&#xff1a;普通的地球人原文地址&#xff1a;https://www.cnblogs.com/tsliwei/p/8041928.html相關知識這部分基本就是廢話,網上都能找到,我只不過是整理了以下.建議先不看,用到的時候可以回來看看貝…

GetDisplayName 獲取枚舉的顯示值

item.State.GetDisplayName(), 轉載于:https://www.cnblogs.com/zhongku/p/4944315.html

組策略管理——軟件限制策略(4)

編寫軟件限制規則 在前面幾篇文章中講了軟件限制規則的基本概念&#xff0c;現在就來學習如何編寫自定義軟件限制策略。 編寫規則應遵循的原則 首先&#xff0c;需要大家注意的是&#xff0c;軟件限制策略應本著方便、安全、實用的原則來編寫。限制規則靈活方便&#xff0c;自定…

我使用 html 反向輸出自己打自己(7)

作者簡介 作者名&#xff1a;1_bit 簡介&#xff1a;CSDN博客專家&#xff0c;2020年博客之星TOP5&#xff0c;藍橋簽約作者。15-16年曾在網上直播&#xff0c;帶領一批程序小白走上程序員之路。歡迎各位小白加我咨詢我相關信息&#xff0c;迷茫的你會找到答案。 目錄 HTML基…

甘肅省普通高等學校高職(專科)升本科考試英語科考試大綱(試行)

甘肅省普通高等學校高職&#xff08;專科&#xff09;升本科考試英語科考試大綱&#xff08;試行&#xff09; 一、考試目的 全面考核普通高等學校高職&#xff08;專科&#xff09;應屆畢業生英語課程是否達到教學大綱所規定的目標&#xff08;領會式掌握3500單詞&#xff0c…

256種編程語言大薈萃

本文是碼農網原創翻譯&#xff0c;轉載請看清文末的轉載要求&#xff0c;謝謝合作&#xff01; 雙休日常常意味著很多休息時間。與其懶洋洋地坐在那里玩游戲&#xff0c;為何不學點新知識武裝自己&#xff1f;本文中不會特定推薦哪種編程語言&#xff0c;但是會提供基于GitHub上…

java 獲取系統當前時間

Calendar ca Calendar.getInstance(); int year ca.get(Calendar.YEAR);//獲取年份 int monthca.get(Calendar.MONTH);//獲取月份 int dayca.get(Calendar.DATE);//獲取日 int minuteca.get(Calendar.MINUTE);//分 int hourca.get(Calendar.HOUR)…

Android之最簡單的遍歷某個目錄下的所有文件(遞歸)

1、問題 遍歷某個目錄下的所有問題文件 2、代碼實現 fun getRecoverTrashFile(path: String) {if (TextUtils.isEmpty(path))returntry {var file File(path)if (file null || !file.exists()) {return}var files file.listFiles()if (files null || files.size < 0) {…

Castle.DynamicProxy攔截器

在asp.net mvc或asp.net miniapi中&#xff0c;有過濾器&#xff0c;可以在請求前或后增加一層&#xff0c;達到驗證&#xff0c;過濾等作用&#xff0c;如果在Service的方法前后加一層呢&#xff1f;這里介紹一下Castle.DynamicProxy的用法。首先引入Castle.Core實現代碼相對輕…

甘肅省普通高等學校高職(專科)升本科考試計算機科考試大綱(試行)

甘肅省普通高等學校高職&#xff08;專科&#xff09;升本科考試計算機科考試大綱&#xff08;試行&#xff09; 一、考試目的及要求 全面考核普通高等學校高職&#xff08;專科&#xff09;應屆畢業生計算機應用能力是否達到教學大綱所規定的要求。所有考生計算機基礎知識必須…

Android選項切換條SHSegmentControl

&#xfeff;&#xfeff;Android選項切換條SHSegmentControl SHSegmentControl是github上一個開源的選項切換條&#xff0c;其樣式如圖所示&#xff1a; SHSegmentControl在github上的項目主頁地址&#xff1a;https://github.com/7heaven/SHSegmentControl SHSegmentControl…

從零開始編寫自己的C#框架(14)——T4模板在邏輯層中的應用(三)

原本關于T4模板原想分5個章節詳細解說的&#xff0c;不過因為最近比較忙&#xff0c;也不想將整個系列時間拉得太長&#xff0c;所以就將它們整合在一塊了&#xff0c;可能會有很多細節沒有講到&#xff0c;希望大家自己對著代碼與模板去研究。 本章代碼量會比較大&#xff0c;…

趕緊3分鐘學完15分鐘的內容我要出去玩(8)

作者簡介 作者名&#xff1a;1_bit 簡介&#xff1a;CSDN博客專家&#xff0c;2020年博客之星TOP5&#xff0c;藍橋簽約作者。15-16年曾在網上直播&#xff0c;帶領一批程序小白走上程序員之路。歡迎各位小白加我咨詢我相關信息&#xff0c;迷茫的你會找到答案。 目錄 HTML基…

Android之獲取到音視頻的時長后按格式(00:00或者00:00:00)顯示

1 需求 我們獲取到了本地視頻時長(秒為單位),然后需要按照如下格式顯示 沒有到小時的時長如下格式 00:00 有到小時的時長如下格式 00:00:00 2 代碼實現 /*** 可以顯示小時*/fun getDateStr(ms: Long): String? {val ss = 1val mi = ss * 60val hh = mi * 60val dd = …

Hello Playwright:(5)查找元素

操作瀏覽器歸根到底就是和頁面進行交互&#xff0c;那么必不可少的操作就是查找頁面上的元素。因此我們需要熟練掌握Locator 定位器。在上一節我們講過&#xff0c;可以使用Page.Locator(selector, options)方法創建定位器&#xff0c;而如何定位到元素則取決于selector 選擇器…

RxSwift 之官方文檔

RxSwift 官方文檔結構 Introduction:SubjectsTransforming ObservablesFiltering ObservablesCombining ObservablesError Handing OperatorsObservable Utility OperatorsConditional and Boolean OperatorsMathematical and Aggregate OperatorsConnectable Observable Opera…

SQL一鍵備份用戶數據庫

大家都知道&#xff0c;Ms Sql 有自動備份的功能&#xff0c;但如果由于某種原因不能自動備份&#xff0c;或者我們想手動備份的話&#xff0c;就可以用下邊的sql語句來執行備份。 --------------------代碼開始------------- USE [master]------刪除舊數據-------------------…

2019年甘肅省普通高等學校高職(專科)升本科考試招生工作實施辦法

2019年甘肅省普通高等學校高職&#xff08;專科&#xff09;升本科考試招生工作實施辦法 2019年甘肅省普通高等學校高職&#xff08;專科&#xff09;升本科考試招生工作實施辦法 根據教育部有關規定及要求&#xff0c;結合我省實際&#xff0c;為確保普通高等學校高職&#x…