การเขียนโปรแกรม

คำถาม & คำตอบสำหรับโปรแกรมเมอร์มืออาชีพและกระตือรือร้น

7
Python“ ขยาย” สำหรับพจนานุกรม
วิธีใดที่ดีที่สุดในการขยายพจนานุกรมด้วยพจนานุกรมอื่น ตัวอย่างเช่น >>> a = { "a" : 1, "b" : 2 } >>> b = { "c" : 3, "d" : 4 } >>> a {'a': 1, 'b': 2} >>> b {'c': 3, 'd': 4} ฉันกำลังมองหาการดำเนินการใด ๆ ที่จะได้รับforห่วงหลีกเลี่ยงนี้: { "a" : 1, "b" : 2, "c" : 3, "d" …
462 python  dictionary 

11
เลิกทำ git update-index - สมมติว่าไม่เปลี่ยนแปลง <file>
วิธีที่คุณ Git เพิกเฉยต่อการดู / ติดตามไฟล์ / ไฟล์ที่ต้องการ คุณเรียกใช้สิ่งนี้: git update-index --assume-unchanged &lt;file&gt; ตอนนี้คุณจะยกเลิกได้อย่างไรเพื่อให้พวกเขาดูอีกครั้ง (เราเรียกมันว่ายกเลิกการสันนิษฐาน)


10
คุณทดสอบแอพ iphone ได้อย่างไร?
คุณทดสอบเบต้าแอพ iPhone ได้อย่างไร ฉันสามารถใช้งานได้บนอุปกรณ์ของตัวเองและใครก็ตามที่ให้อุปกรณ์กับฉันฉันสามารถใช้งานได้บนอุปกรณ์ของพวกเขา แต่มีวิธีทำรุ่น จำกัด ผ่านทาง app store สำหรับการทดสอบเบต้าหรือไม่ ที่เกี่ยวข้อง: โปรดดูคำถามนี้ในการนำแอปของคุณไปยังโทรศัพท์โดยไม่ต้องใช้ App Store
462 ios  beta-testing 

23
วิธีรับชื่อแท็กล่าสุดในสาขาปัจจุบันใน Git
วิธีที่ง่ายที่สุดในการรับแท็กล่าสุดใน Git คืออะไร git tag a HEAD git tag b HEAD^^ git tag c HEAD^ git tag เอาท์พุท: a b c ฉันควรเขียนสคริปต์เพื่อให้ได้รับวันที่และเวลาของแท็กและเปรียบเทียบได้อย่างไร

17
คำแนะนำสำหรับแท็ก html <base> คืออะไร
ฉันไม่เคยเห็น&lt;base&gt;แท็ก HTML ใช้จริงมาก่อน มีข้อผิดพลาดในการใช้ซึ่งหมายความว่าฉันควรหลีกเลี่ยง ความจริงที่ว่าฉันไม่เคยสังเกตเห็นมันถูกใช้ในเว็บไซต์การผลิตที่ทันสมัย ​​(หรือเว็บไซต์ใด ๆ ) ทำให้ฉันรู้สึกสับสนแม้ว่ามันจะดูเหมือนว่ามันอาจมีแอปพลิเคชั่นที่มีประโยชน์สำหรับการทำให้ลิงก์ในเว็บไซต์ของฉันง่ายขึ้น แก้ไข หลังจากใช้แท็กฐานเป็นเวลาสองสามสัปดาห์ฉันก็พบว่ามีgotchas สำคัญ ๆด้วยการใช้แท็กฐานที่ทำให้มันเป็นที่ต้องการน้อยกว่าที่มันปรากฏครั้งแรก โดยพื้นฐานแล้วการเปลี่ยนแปลงไปยังhref='#topic'และhref=''ภายใต้แท็กฐานนั้นเข้ากันไม่ได้กับพฤติกรรมเริ่มต้นของพวกเขาและการเปลี่ยนแปลงจากพฤติกรรมเริ่มต้นนี้สามารถทำให้ห้องสมุดบุคคลที่สามอยู่นอกการควบคุมของคุณไม่น่าเชื่อถืออย่างมาก ในรูปแบบที่ไม่คาดคิดเนื่องจากเหตุผลจะขึ้นอยู่กับพฤติกรรมเริ่มต้น บ่อยครั้งที่การเปลี่ยนแปลงนั้นบอบบางและนำไปสู่ปัญหาที่ไม่ชัดเจนในทันทีเมื่อจัดการกับ codebase ขนาดใหญ่ ฉันได้สร้างคำตอบโดยละเอียดตั้งแต่ปัญหาที่ฉันพบด้านล่าง ดังนั้นทดสอบผลลัพธ์ลิงก์ด้วยตัวคุณเองก่อนที่คุณจะยอมรับการปรับใช้อย่างกว้างขวาง&lt;base&gt;นั่นคือคำแนะนำใหม่ของฉัน!

15
วนรอบผ่านอาร์เรย์และนำรายการออกโดยไม่ทำลายให้วนซ้ำ
ฉันมีลูปต่อไปนี้และเมื่อฉันใช้splice()เพื่อลบไอเท็มฉันได้รับ 'วินาที' ที่ไม่ได้กำหนด ฉันสามารถตรวจสอบว่ามันไม่ได้กำหนด แต่ฉันรู้สึกว่าอาจมีวิธีที่สง่างามกว่านี้ ความปรารถนาที่จะเพียงแค่ลบรายการและดำเนินการต่อไป for (i = 0, len = Auction.auctions.length; i &lt; len; i++) { auction = Auction.auctions[i]; Auction.auctions[i]['seconds'] --; if (auction.seconds &lt; 0) { Auction.auctions.splice(i, 1); } }
462 javascript  loops 


9
ฉันจะล้างวัตถุ Python อย่างถูกต้องได้อย่างไร
class Package: def __init__(self): self.files = [] # ... def __del__(self): for file in self.files: os.unlink(file) __del__(self)ด้านบนล้มเหลวด้วยข้อยกเว้นของ AttributeError ฉันเข้าใจว่าPython ไม่รับประกันการมีอยู่ของ "ตัวแปรทั่วโลก" (ข้อมูลสมาชิกในบริบทนี้?) เมื่อ__del__()มีการเรียกใช้ หากเป็นเช่นนั้นและนี่คือเหตุผลสำหรับข้อยกเว้นฉันจะแน่ใจได้อย่างไรว่าวัตถุถูกทำลายอย่างถูกต้อง
462 python  destructor 

14
วิธีรวมไฟล์นอกบริบทการสร้างของ Docker หรือไม่
ฉันจะรวมไฟล์จากนอกบริบทการสร้างของ Docker โดยใช้คำสั่ง "ADD" ในไฟล์ Docker ได้อย่างไร จากเอกสารนักเทียบท่า: เส้นทางต้องอยู่ในบริบทของการสร้าง คุณไม่สามารถเพิ่ม .. / บางสิ่ง / บางสิ่งบางอย่างได้เนื่องจากขั้นตอนแรกของบิลด์บิลเดอร์คือการส่งไดเรกทอรีบริบท (และไดเรกทอรีย่อย) ไปยัง Docker daemon ฉันไม่ต้องการที่จะปรับโครงสร้างโครงการทั้งหมดของฉันเพียงเพื่อรองรับนักเทียบท่าในเรื่องนี้ ฉันต้องการเก็บไฟล์ Docker ของฉันไว้ในไดเรกทอรีย่อยเดียวกัน นอกจากนี้ยังปรากฏว่า Docker ยังไม่สนับสนุนการเชื่อมโยง (และอาจไม่เคย): คำสั่ง Dockerfile ADD ไม่ปฏิบัติตาม symlinks บนโฮสต์ # 1676 สิ่งเดียวที่ฉันคิดได้ก็คือการรวมขั้นตอนก่อนสร้างเพื่อคัดลอกไฟล์ลงในบริบทของนักสร้าง Docker (และกำหนดค่าการควบคุมเวอร์ชันของฉันเพื่อละเว้นไฟล์เหล่านั้น) มีวิธีแก้ปัญหาที่ดีกว่าสำหรับที่?
462 docker 

4
ถ่ายโอนไฟล์ผ่าน SSH [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Stack Overflow ปิดให้บริการใน9 ปีที่ผ่านมา ฉัน SSHing เป็นเซิร์ฟเวอร์ระยะไกลในบรรทัดคำสั่งและพยายามที่จะคัดลอกไดเรกทอรีไปยังเครื่องท้องถิ่นของฉันด้วยscpคำสั่ง อย่างไรก็ตามเซิร์ฟเวอร์ระยะไกลส่งคืนข้อความ "การใช้งาน" นี้: [Stewart:console/ebooks/discostat] jmm% scp -p ./styles/ usage: scp [-1246BCEpqrv] [-c cipher] [-F ssh_config] [-i identity_file] [-l limit] [-o ssh_option] [-P port] [-S program] [[user@]host1:]file1 [...] [[user@]host2:]file2 [Stewart:console/ebooks/discostat] jmm% ฉันต้องการถ่ายโอนไฟล์ทั้งสองทิศทาง จากสิ่งที่ฉันอ่านฉันคิดว่าคำสั่งดังกล่าวจะใช้งานได้สำหรับการดาวน์โหลดและscp -p [localpath] [remotepath]สำหรับการอัปโหลด?
461 ssh  scp 


26
ตรวจสอบว่าเซสชัน PHP เริ่มขึ้นแล้ว
ฉันมีไฟล์ PHP ที่บางครั้งเรียกจากหน้าเว็บที่เริ่มเซสชันและบางครั้งมาจากหน้าเว็บที่ไม่ได้เริ่มเซสชัน ดังนั้นเมื่อฉันมีsession_start()สคริปต์นี้บางครั้งฉันได้รับข้อความข้อผิดพลาดสำหรับ "เซสชั่นเริ่มแล้ว" สำหรับสิ่งที่ฉันได้ใส่บรรทัดเหล่านี้: if(!isset($_COOKIE["PHPSESSID"])) { session_start(); } แต่ครั้งนี้ฉันได้รับข้อความเตือนนี้: แจ้งให้ทราบล่วงหน้า: ตัวแปรที่ไม่ได้กำหนด: _SESSION มีวิธีที่ดีกว่าในการตรวจสอบว่าเซสชั่นได้เริ่มขึ้นแล้ว? ถ้าฉันใช้@session_startมันจะทำให้สิ่งต่าง ๆ ทำงานอย่างถูกต้องและเพียงแค่ปิดคำเตือน?

7
วิธีเปิดและปิด IDENTITY_INSERT โดยใช้ SQL Server 2008
เหตุใดฉันจึงได้รับข้อผิดพลาดในการแทรกเมื่อIDENTITY_INSERTตั้งค่าเป็นปิด ฉันจะเปิดอย่างถูกต้องใน SQL Server 2008 ได้อย่างไร ใช้ SQL Server Management Studio หรือไม่ ฉันได้เรียกใช้แบบสอบถามนี้: SET IDENTITY_INSERT Database. dbo. Baskets ON จากนั้นฉันได้รับข้อความกลับในคอนโซลที่คำสั่งดำเนินการเสร็จสมบูรณ์ อย่างไรก็ตามเมื่อฉันเรียกใช้แอปพลิเคชันมันยังคงให้ข้อผิดพลาดที่แสดงด้านล่าง: Cannot insert explicit value for identity column in table 'Baskets' when IDENTITY_INSERT is set to OFF.

19
“ มีความพยายามในการโหลดโปรแกรมด้วยรูปแบบที่ไม่ถูกต้อง” แม้ว่าแพลตฟอร์มจะเหมือนกันก็ตาม
ฉันกำลังเรียกใช้ฟังก์ชันจาก DLL ที่ไม่มีการจัดการ 32 บิตในระบบ 64 บิต สิ่งที่ฉันได้รับคือ: BadImageFormatException: มีความพยายามในการโหลดโปรแกรมด้วยรูปแบบที่ไม่ถูกต้อง (ข้อยกเว้นจาก HRESULT: 0x8007000B) ตอนแรกฉันตั้งโปรเจคของฉันเป็นแพลตฟอร์มใด ๆ ของ CPU ดังนั้นฉันจึงเปลี่ยนทั้งสองเป็น x86 แต่ข้อผิดพลาดนี้ยังคงเกิดขึ้น นั่นเป็นสิ่งเดียวที่ฉันรู้ในเรื่องนี้ DLLs ไม่เสียหายหรืออะไรเพราะฉันสามารถใช้พวกเขากับโปรแกรมอื่น ๆ (ที่ฉันไม่มีที่มา) ฉันคิดว่าบางทีมันอาจจะไม่ได้รับการอ้างอิง แต่ฉันตรวจสอบและพวกเขาทั้งหมดอยู่ที่นั่น นอกจากนี้จะไม่โยนDllNotFoundExceptionในกรณีนี้หรือไม่? ฉันจะทำอะไรได้อีก และก่อนที่คุณจะพูดว่า "ใช้ DLL ที่ไม่มีการจัดการ 64 บิตแทน" ให้ฉันชี้ให้เห็นว่าไม่มี ;)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.